node.js中使用Export和Import的方法


Posted in Javascript onSeptember 18, 2017

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都可以使用了。

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript网页制作特殊效果用随机数
May 22 Javascript
javascript中局部变量和全局变量的区别详解
Feb 27 Javascript
根据user-agent判断蜘蛛代码黑帽跳转代码(js版与php版本)
Sep 14 Javascript
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
Nov 30 Javascript
Javascript实现倒计时时差效果
May 18 Javascript
原生JS+HTML5实现跟随鼠标一起流动的粒子动画效果
May 03 Javascript
微信小程序自定义tab实现多层tab嵌套功能
Jun 15 Javascript
jQuery 同时获取多个标签的指定内容并储存为数组
Nov 20 jQuery
JavaScript Reflect Metadata实现详解
Dec 12 Javascript
JavaScript进制转换实现方法解析
Jan 18 Javascript
原生js实现日期选择插件
May 21 Javascript
vue如何清除浏览器历史栈
May 25 Vue.js
inner join 内联与left join 左联的实例代码
Sep 18 #Javascript
JavaScript实现的原生态Tab标签页功能【兼容IE6】
Sep 18 #Javascript
vue多种弹框的弹出形式的示例代码
Sep 18 #Javascript
JavaScript实现body内任意节点的自定义属性功能示例
Sep 18 #Javascript
node+express+ejs使用模版引擎做的一个示例demo
Sep 18 #Javascript
jQuery实现对网页节点的增删改查功能示例
Sep 18 #jQuery
详解node服务器中打开html文件的两种方法
Sep 18 #Javascript
You might like
php通过COM类调用组件的实现代码
2012/01/11 PHP
ecshop 2.72如何修改后台访问地址
2015/03/03 PHP
PHP实现可自定义样式的分页类
2016/03/29 PHP
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
JavaScript中双叹号(!!)作用示例介绍
2014/04/10 Javascript
JQuery遍历DOM节点的方法
2015/06/11 Javascript
如何用javascript计算文本框还能输入多少个字符
2015/07/29 Javascript
浅析nodejs实现Websocket的数据接收与发送
2015/11/19 NodeJs
JS+CSS3模拟溢出滚动效果
2016/08/12 Javascript
AngularJS压缩JS技巧分析
2016/11/08 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
AngularJS封装指令方法详解
2016/12/12 Javascript
JS实现字符串转驼峰格式的方法
2016/12/16 Javascript
JS实现数组按升序及降序排列的方法
2017/04/26 Javascript
js实现股票实时刷新数据案例
2017/05/14 Javascript
angularjs实现搜索的关键字在正文中高亮出来
2017/06/13 Javascript
nodejs通过钉钉群机器人推送消息的实现代码
2019/05/05 NodeJs
JS通过识别id、value值对checkbox设置选中状态
2020/02/19 Javascript
[05:00]第二届DOTA2亚洲邀请赛主赛事第三天比赛集锦.mp4
2017/04/04 DOTA
Python完全新手教程
2007/02/08 Python
Python实现队列的方法
2015/05/26 Python
详解Python里使用正则表达式的ASCII模式
2017/11/02 Python
pandas中Timestamp类用法详解
2017/12/11 Python
Python hashlib模块用法实例分析
2018/06/12 Python
Python使用combinations实现排列组合的方法
2018/11/13 Python
python 实现查找文件并输出满足某一条件的数据项方法
2019/06/12 Python
tensorflow如何批量读取图片
2019/08/29 Python
python实现数据结构中双向循环链表操作的示例
2020/10/09 Python
法学毕业生自荐信
2013/11/13 职场文书
公司财务流程之主管工作流程
2014/03/03 职场文书
农村文化建设标语
2014/10/07 职场文书
2014年医院后勤工作总结
2014/12/06 职场文书
国家助学金感谢信
2015/01/21 职场文书
公积金贷款承诺书
2015/04/30 职场文书
为什么MySQL选择Repeatable Read作为默认隔离级别
2021/07/26 MySQL
Redis基本数据类型List常用操作命令
2022/06/01 Redis