In der ES6 Spezifikation gibt es zwei Modi, in denen eine Datei verarbeitet werden kann:
Als ein „Skript“ in der Regel alles, was wir gewohnt sind, wäre in einer Standard-JS-Umgebung
ES6-Modul-Syntax ist nicht zulässig, und aus Gründen der Abwärtskompatibilität wird Inhalt nur dann als streng behandelt, wenn er über eine Präfix-Direktive von "use strict";
verfügt.
Als "Modul"
ES6 Modul Syntax erlaubt ist, und all Code wird automatisch strikter Modus in allen Fällen.
Da ES6 Modul Syntax mit gebunden ist, ob etwas ein Modul oder ein Skript, und wenn etwas ein „Modul“ ist es automatisch strenge ist, verwendet Babel die Präsenzen von transform-es2015-modules-commonjs
beide Transformationen in derselben zu ermöglichen, Zeit.
Selbst wenn Sie nur die Modulumwandlung selbst aktivieren und den strikten Modus ausschließen würden, wäre der gesamte von Ihnen geschriebene Code technisch ungültig und sobald Sie versuchen, Ihren ES6-Code in einer echten ES6-Modulumgebung zu verwenden, wäre dies streng Egal, ob Sie es wollen oder nicht.
Wenn Sie nicht möchten, dass Ihr Code streng ist, würde ich vorschlagen, die transform-es2015-modules-commonjs
Transformation zu deaktivieren und CommonJS-Module zu verwenden, da sie keine solche strict-mode-Anforderung haben.