在节点4.x中导出ES6类意外的保留字

时间:2015-10-15 18:30:07

标签: javascript node.js ecmascript-6

我在Node脚本中有以下内容:

"use strict";

class Whatever {
    constructor() {
        console.log("I'm in the constructor!");
    }
}

export default Whatever;

关于Unexpected reserved word,我得到export

我在这里缺少什么?如何在外部文件中指定类定义并包含/要求它?

2 个答案:

答案 0 :(得分:7)

默认情况下,Node.js不支持ES6模块。您需要使用--harmony--harmony_modules标记激活它们。默认是CommonJS声明(require/module.exports)

修改代码以支持CommonJS语法:

"use strict";

class Whatever {
    constructor() {
        console.log("I'm in the constructor!");
    }
}

module.exports = Whatever;

答案 1 :(得分:2)

ES6模块在Node中尚不稳定,但您可以使用--harmony_modules启用它们。显然不建议在生产环境中使用。

ES6 support in Node 4.x