Typescript: adăugarea doar a unei proprietăți opționale elimină verificarea tipurilor
Folosesc TypeScript 1.4.1 și am următorul cod:
var hello: {message: string};
hello = {world: 't'};
Așa cum era intenționat, compilatorul TypeScript produce o eroare:
Tipul '{ world: string; }' nu poate fi asignat tipului '{ message: string; }'. Proprietatea 'message' lipsește în tipul '{ world: string; }'. (var) hello: { message: string; }
Dar dacă tipul conține doar o proprietate opțională, așa cum este în:
var hello: {message?: string};
hello = {world: 't'};
Atunci compilatorul este perfect mulțumit, dar aș dori ca eroarea să fie detectată.
Ce fac greșit? Sau este o eroare de TypeScript?
Mulțumesc pentru ajutor!
Răspuns #1
Atunci compilatorul este perfect mulțumit, dar aș vrea ca eroarea să fie detectată. Ce fac greșit? Sau este o eroare de TypeScript?
Nu, acest lucru este intenționat. informațiile suplimentare sunt în regulă atâta timp cât informațiile necesare (în acest caz nimic) sunt prezente.