2016-04-01 6 views
0

Dies kompiliert, wenn ich es gebenECMAScript 6 Typprüfungen

function foo(a: number, b: {prop: number}): number { 
    return a + b.prop 
} 

babel jedoch babel beschwert sich nicht, wenn ich es eine Zeichenfolge als Argument geben

foo('this', 'string') 

Ist dies tatsächlich gültig ES6? Wenn ja, wird die Typinformation irgendwo verwendet?

+0

Dies gilt nicht ECMAScript 6 ist, ist dies Typoskript. –

+0

so babel tut nicht Fehler bei Typdeklarationen? –

Antwort

0

Babel ist nur ein JavaScript-Transpiler ohne Typüberprüfung. Vielleicht verwendest du ein bestimmtes Plugin für Babel?

Ich würde Ihnen empfehlen, zu TypeScript zu wechseln, wenn Sie wirklich eine komplexe Art benötigen, die auf Ihr Projekt prüft. Es wird ein expliziter Fehler für jeden Tippfehler bei der Verwendung falscher Typen auftreten.

Verwandte Themen