Nodejs 6.x版本还没有支持export 和import
import与export是es6中模块化的导入与导出,node.js现阶段不支持,需要通过babel进行编译,使其变成node.js的模块化代码。(关于node.js模块,可参考其他node.js模块化的文章)
继续使用exports和require
test.js
class Point { constructor(x, y) { this.x = x; this.y = y; } add (){ this.x = this.x ? this.x : 1; this.y = this.y ? this.y : 2; return this.x + this.y; } } const PI = 3.1415926; exports.Point = Point; exports.PI = PI; let a = new Point(); console.log(a.add());
test2.js
let {Point,PI} = require('./test.js'); class Point2 extends Point{ //add(); } let b = new Point2(); console.log(b.add()); console.log(PI);
使用babel来支持export 和 import
在package.json增加 babel的配置
"babel": { "presets": ["es2015"] }, "scripts": { "start": "node app/51job.js", "build": "babel src -d app" },
安装babel相关模块
npm install --save-dev babel-cli npm install babel-preset-es2015 --save-dev
在命令行使用 npm run build
就可以把src目录下的所有javascript文件转换为标准javascript代码到lib目录。async和await都可以使用了。