2016-10-26 46 views
5

benim zaman uyumsuz işlevinde getirme kullanmaya çalışıyorum ancak akışı bu hatayıflowjs ile getirme kullanımına bir örnek var mı? Akış (51, 26):

Hata atıyor Promise. Bu tür birleşim ile uyumsuz: tanımlayıcı Promise tür uygulama |

async myfunc() { 
    const response = await fetch('example.com'); 
    return await response.json(); 
} 

Ben kullanarak fonksiyonun dönüş türü açıklama, ya response.json

+0

https://flow.org/try/#0IYZwngdgxgBAZgV2gFwJYHsIwLZkdACgEoYBvAKBiqkxGRgCcBTEAB1qZgF4ZgB3YKnpwmyKAAsCAciYAPYNlYAbJgDoa2KUQDclKs2QIGWfoPrM2HVQCsQmYroC+QA –

+0

ben yanıtımı yazmak istiyorum –

+1

tks, great code –

cevap

4

tepkisini yazın istiyorum: beklemektedir

tipi parametresi T bu hatayı üretebilir bir koddur Promise <T> Burada T istenilen türdür veya sonucu, açık bir tip ek açıklama ile geçici bir yerel atayın ve sonra yerel olarak döndürün. İşlev dönüş tipi daha sonra çıkarılacaktır.

Açık dönüş tipi açıklama: açıkça yerel açıklamalı gelen

async myfunc(): Promise<{name: string}> { 
    const response = await fetch('example.com'); 
    return await response.json(); 
} 

Çıkarılan döndürme türü:

async myfunc() { 
    const response = await fetch('example.com'); 
    const result: {name: string} = await response.json(); 
    return result; 
}