Ben in TypeScript yaptığı gibi in Flow kontrol yazmak için bu kodu bekliyordum:Akışı neden döndüklerine bağlı olarak bir işlev türünü çıkarmaz?
4: onClick =() => { return true; }
^function. Could not decide which case to select
3: var onClick : (() => void) | (() => boolean);
^union type
bu tasarım kararı için genel bir isim var mı ve ne: Yerine
var onClick : (() => void) | (() => boolean);
onClick =() => { return true; }
, bu hatayı alıyorum arkasındaki mantık?
Akış denetleyicisinden bir işlevin dönüş türünün döndürme ifadelerinden çıkmasını istemek mümkün müdür?
Sana bi cevabım yok ama neden olmasın do (() => Promise | void) '? –
loganfsmyth
farklı şeyler demek istediler: '() => A | B ', bazen' A 'değerini döndüren tek bir işlevdir ve diğer zamanlarda 'B' döndürürken,' (() => A) | (() => B) ', her zaman" A "değerini veya her zaman B'yi döndüren bir işlevi döndüren bir işlevdir. –
, ör. 5. satırda aramanın üzerine gelin: https://www.typescriptlang.org/play/index.html#src=const%20f%20%3D%20 (x)% 20% 3D% 3E% 20console.log (x)% 3B% 0D% 0Avar% 20onClick% 20% 3A% 20 ((),% 20,% 3D% 3E% 20void)% 20% 7C% 20 ((),% 20,% 3D% 3E% 20Promise% 3Cvoid% 3E) % 3B% 0D% 0AraBasın% 20% 3D% 20()% 20% 3D% 3E% 20f (% 22hi% 22)% 3B% 0D% 0A% 0D% 0AraClick()% 3B –