Ich versuche es6 in meinem Server-Side-Code zu integrieren. Die Verwendung von babel-node funktioniert beim Ausführen des Servers, aber ich habe Probleme beim Kompilieren von Es6 zu Es5-Code, wenn Mocha-Tests ausgeführt werden.Verwendung von Es6 auf Mokkazyklen
Dies ist meine Ordnerstruktur
Ich habe eine server.js, die eine worker.js Datei startet (die den Express-Server hat)
die server.js Datei
import {SocketCluster} from 'socketcluster';
const socketCluster = new SocketCluster({
workers:1,
brokers:1,
port: 3000,
appName:null,
workerController: __dirname + '/worker.js',
brokerController: __dirname + '/broker.js',
socketChannelLimit: 1000,
crashWorkerOnError: true
})
Die Datei worker.js
Wenn der Server manuell ausgeführt wird, funktioniert es mit dem Bel ow Skript
"start": "nodemon server/server.js --exec babel-node"
aber wenn ich versuche, die Testdatei mit Mokka läuft Ich erhalte einen ‚unerwarteten Token‚Export‘Fehler‘
(function (exports, require, module, __filename, __dirname) { export const run = (broker) => {
^^^^^^
SyntaxError: Unexpected token export
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:511:25)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:456:32)
at tryModuleLoad (module.js:415:12)
at Function.Module._load (module.js:407:3)
at Module.require (module.js:466:17)
at require (internal/module.js:20:19)
at initBrokerServer (/home/avernus/Desktop/projects/node-sc-react/node_modules/sc-broker/server.js:178:25)
at process.<anonymous> (/home/avernus/Desktop/projects/node-sc-react/node_modules/sc-broker/server.js:498:9)
das ist das Skript der Mokka-Tests zu beginnen
"test": "mocha test/server/*.js --compilers js:babel-register"
bin ich etwas anderes fehlt?
ist dies die Testdatei
import server from '../../server/server';
import http from 'http';
import assert from 'assert';
import {expect} from 'chai';
describe('Express server',() =>{
it('should return "Hello World"',() => {
http.get('http://127.0.0.1:3000',(res) => {
expect(res).to.contain('wtf world')
})
})
})
immer noch der Fehler :(.. Hinzufügen --recursive scheint nicht zu arbeiten – Kannaj
@Kunkka Ich bin wenig überrascht.Ich benutze es und es funktioniert einfach. Bitte überprüfen Sie [diese package.json] (https: // github .com/nmrony/hlsdownloader/blob/master/package.json) paket –
seit npm start scheint mit der gleichen quelle zu arbeiten .. wo sonst denkst du könnte ich falsch liegen? ich denke babel ist nicht richtig kompilieren weitere importe – Kannaj