Wie der Titel, ich versuche, einige AMD-Module in ES6 JS geschrieben, läuft von nodejs.Wie man Harmonie/ES6/ECMAScript 6 JavaScript testen?
Ich versuchte zuerst mit Intern: auch nach dem Freigeben --harmony
in Nodejs, endete ich mit Blick auf Interns Abhängigkeitskette, wo ich nicht in der Lage, Harmonie in z. Istanbul, esprima und andere (Ich öffnete eine issue dafür).
Ich bin dann auf mocha, und hier bin ich stecken geblieben ... seltsam. Ich ermöglichte Harmonie sowohl für NodeJS und Mokka selbst, hier ist der package.json
Testskript:
"test": "node --harmony node_modules\\mocha\\bin\\mocha tests --harmony --recursive"
, die ich von Eingabeaufforderung als npm test my_test_folder
laufen. Trotzdem gehen einige ES6-Konstrukte (wie const
) in Ordnung, aber dann erstickt sie an der Destrukturierungsaufgabe. Hier sind die ersten Ausgangsleitungen:
const { log, dir } = require('../consoleLogger.js');
^
SyntaxError: Unexpected token {
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
[...continues...]
Ich habe auch dieses SO thread geprüft und gehört zu transpilers,
aber ich weiß wirklich nicht, ob sie
arbeiten konnte, und ich versuche jetzt zu transpilers machen arbeiten in dieser Fall.
Haben Sie eine Idee, wie Sie dies lösen können, ohne alle ES6-Bits im Code zu ändern? TA.
Können Sie Harmony-Funktionen verwenden, wenn Sie Mocha nicht verwenden? Wenn es nicht funktioniert, wenn Sie Mocha nicht verwenden, funktioniert es nicht mit Mocha. – Louis
Guter Punkt, obwohl der Code Teil eines Thunderbird-Plugins ist, in dem Harmoniefunktionen funktionieren. Hier versuche ich, Tests von (Knoten) Kommandozeile auszuführen, so dass Probleme jetzt herauskommen. – superjos
Da niemand es erwähnt, überprüfen Sie http://kangax.github.io/compat-table/es6/ –