Das Modulsystem ist unabhängig von der Sprachimplementierung. ES6 (ES2015) -Module verwenden die import/ -Syntax export, und es ist Sache des Modulladers , dies zu interpretieren.
Hier haben Sie mit dem ES2015-Modulsystem angegeben, damit die ES6-Modulsyntax aktiviert wird.
Das JavaScript selbst zielt möglicherweise auf ES5 ab und verwendet nur ES5-Funktionen. Theoretisch ist es jedoch möglich, einen Modullader mit diesem Code zu verwenden, der mit der ES2015-Modulsyntax arbeitet. Obwohl es möglich ist, ist es nicht unbedingt etwas, was Sie tun möchten. Es ist üblicher, CommonJS- oder AMD-Module mit ES5-JavaScript zu verwenden.
Anscheinend war diese Kombination vor TypeScript 2.0 nicht einmal erlaubt. In den Versionshinweisen zu TypeScript 2.0 heißt es:
"Früher als ungültige Flaggenkombination gekennzeichnet, werden jetzt target: es5 und 'module: es6' unterstützt. Dies sollte die Verwendung von ES2015-basierten Baumschüttlern wie Rollup erleichtern."