Intellij NodeJs 6.4.0意外令牌导出

Hen*_*val 10 intellij-idea node.js ecmascript-6

我正在使用Intellij Idea在ES6中创建NodeJs应用程序.

我的node.exe版本是6.4.0版

我创建了一个简单的类:

//wNodeClasses.js

'use strict';
export class wsUrl
 {
   constructor()
   {}
 }
Run Code Online (Sandbox Code Playgroud)

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

require('../../../Root/Libs/Waldata/wsNodeClasses');
Run Code Online (Sandbox Code Playgroud)

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

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

  • 我知道NodeJs 6.4.0可以直接解释ES6代码

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

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

我是一个新手,我想我错过了一些明显的东西,我用Google搜索,我没有找到答案

Hen*_*val 5

我终于找到了问题。带有Chrome V8的NodeJs 6.4.0不支持Es6“导出”关键字或语法。

我发现了一种使用方法

//Module file
module.exports=
class wsUrl
 {
 }
Run Code Online (Sandbox Code Playgroud)

并在消费者中:

var wsUrl = require('../../../Root/Libs/Waldata/wsNodeClasses');
...
var MyVar = wsUrl new("test");
Run Code Online (Sandbox Code Playgroud)

我仍在寻找在同一个Js文件(模块)中包含多个类并将其导出