J'utilise tapuscrit pour écrire le programme NodeJS.La propriété n'existe pas sur la valeur de retour d'une fonction de plusieurs types
Dans ce programme, j'importer un module de nœud appelé ts-md5
, dans lequel il y a une fonction hashStr()
, il pourrait retourner une valeur de string
ou Int32Array
.
je dois faire des choses comme ça dans mon programme:
Md5.hashStr(str).toUpperCase();
Cependant, le compilateur se plaint d'erreur:
error TS2339: Property 'toUpperCase' does not exist on type 'string | Int32Array'.
Le programme se déroule avec succès. Parce qu'il renvoie toujours string
pendant l'exécution. Mais je veux savoir s'il existe un moyen de se débarrasser de cette erreur ennuyeuse?
Les deux méthodes fonctionnent, et la méthode * type guard * fournit une solution sûre, dans laquelle je peux traiter les deux types de retour. –