217 votes

quelle est la logique derrière l'erreur - l'opérande d'un opérateur 'delete' doit être optionnel typescript 4.0

C'est la nouvelle erreur qui apparaît dans le code typographique.

Je ne suis pas en mesure de réaliser la logique derrière cela.
Documentation

/*When using the delete operator in strictNullChecks, 
the operand must now be any, unknown, never, or be optional 
(in that it contains undefined in the type). Otherwise, use of the delete operator is an error.*/

interface Thing {
  prop: string;
}

function f(x: Thing) {
  delete x.prop; // throws error = The operand of a 'delete' operator must be optional.
}

3 votes

Votre question inclut la réponse... When using the delete operator in strictNullChecks, the operand must now be any, unknown, never, or be optional

5voto

Rajitha Udayanga Points 571

Le site prop la propriété dans Thing doit être marquée comme optionnelle en utilisant ? marque.

alors votre Thing L'interface doit être comme ça.

interface Thing {
  prop?: string;
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X