Intellij NodeJs 6.4.0意外的令牌导出

我正在使用Intellij Idea在ES6中创build一个NodeJs应用程序。

我的node.exe版本是版本6.4.0

我创build了一个简单的类:

//wNodeClasses.js 'use strict'; export class wsUrl { constructor() {} } 

我将模块导入到另一个文件中:

 require('../../../Root/Libs/Waldata/wsNodeClasses'); 

当我启动应用程序,我总是得到错误:

 d:\Dev\webDev\Root\Libs\Waldata\wsNodeClasses.js:11 export class wsUrl ^^^^^^ SyntaxError: Unexpected token export at Object.exports.runInThisContext (vm.js:76:16) 
  • 我不使用任何转译器,我想写“纯ES6代码”(我不想使用Babel或任何等价物)

  • 我明白,NodeJs 6.4.0可以直接解释ES6代码

  • 这是我的Node.Exe命令行:

    -max-old-space-size = 8192 –expose_debug_as = v8debug

我是一个新手,我想我错过了一些明显的东西,我search了一下,我没有find答案

我终于find了问题。 使用chrome V8的NodeJs 6.4.0不支持Es6“导出”关键字或语法。

我find了一个使用的工作

 //Module file module.exports= class wsUrl { } 

在消费者中:

 var wsUrl = require('../../../Root/Libs/Waldata/wsNodeClasses'); ... var MyVar = wsUrl new("test"); 

我仍然在寻找在同一个Js文件(模块)中有多个类并导出它们

感谢您的回答。

我使用了不同的技术(我认为这只是个人喜好的问题):

 //In the module module.exports.myClass1=class myClass1{} module.exports.myClass2=class myClass2{} //In the main file (consumer) var myModule = require('../../../Root/Libs/Waldata/wsNodeClasses'); ... var test=new myModule .wsUrl("param"); 

这适用于我的NodeJs 6.4.0和intellij(或webstorm)

PS:我正在添加一个答案,因为我有问题格式化我的评论(无法进行“换行”