Fait: J'utilise TS v. 2.3.4. J'ai créé une fonction qui vérifie la météo une variable est définie (il faut variable
comme paramètre et renvoie 'undefined' !== typeof variable
). Une paix de gâteau.Fonction externe de typographie pour erreur de vérification et de compilation de type
export function IsDefined(variable: any): boolean {
return 'undefined' !== typeof variable;
}
Problème: Ci-dessous le code produit un avertissement sur la ligne 2.. L'avertissement dit L'objet est probablement indéfini.
if (IsDefined(myVar)) {
myVar.mockProperty = "asdf"; //Object (myVar, obviously) is possibly undefined
}
Question: Est-il possible de dire compilateur TS cette méthode IsDefined()
contrôle variable par rapport à la valeur définie, il ne prévient pas avec des informations fausses? Existe-t-il d'autres méthodes pour contourner ce problème?
Contournements Je sais et je ne suis pas prêt à utiliser, car ils rend le code impur:
(<myType>myVar).mockProperty = "asdf";
if ("undefined" !== typeof myVar) {
Wow, fonctionnalité intéressante. J'ai dû lire les docs à la hâte;) Merci! –