Warum fließt fließen Fehler hier?Typ mit Vielleicht Requisiten erlaubt nicht Typ mit Non-Maybe Requisiten
type MaybeProp = {
prop: ?number,
}
type DefinetlyProp = {
prop: number,
}
const requireMaybe = (u: MaybeProp) => console.log(u)
const requireDefinetly = (u: DefinetlyProp) => requireMaybe(u)
Es scheint so, dass eine Funktion, die Eigenschaften vielleicht umgehen kann, sollte auch in der Lage sein, die gleichen Eigenschaften zu handhaben, wenn sie definitiv festgelegt sind.
Jeder Weg, um dies zu umgehen?
sie die gleiche Art und nutzen Sie den Parameter auf einen „vielleicht“ ... https://flow.org/try/#0FDAuE8AcFMAIAUBOB7SsC8sDexa0ipAFywB2ArgLYBG0iANMAL4jADGypAzqLItAEdyAS34BZAIbhaGWAApyJAPxJUASgwA ändern + WB27IANtAB0 + 5AHMFa9px59BI-gBFoAM2GloofeFkKSqyA10bX4hUWhJaWhLIA – evolutionxbox
Ich rufe dich nicht dumm ... Der Fehler ist aufgetreten, weil du eine Art 'MaybeProp' angefordert hast und eine' DefinitiveProp' übergeben hast ... in deinem zweiten Beispiel, das du anforderst und passierst eine Zahl. – evolutionxbox
@evolutionxbox Das ist offensichtlich. Aber warum bricht es, wenn die Nummer verschachtelt ist? Da flow keinen nominalen Vergleich für Objekte durchführt, schaut es nicht blindlings nach 'MaybeProp! == DefinitivProp'. Es vergleicht die Struktur. – MoeSattler