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 相关文章推荐
基于jquery的DIV随滚动条滚动而滚动的代码
Jul 20 Javascript
JQUERY 设置SELECT选中项代码
Feb 07 Javascript
jquery插件推荐 jquery.cookie
Nov 09 Javascript
js获取字符串最后一位方法汇总
Nov 13 Javascript
javascript 动态创建表格的2种方法总结
Mar 04 Javascript
jquery实现键盘左右翻页特效
Apr 30 Javascript
javascript jquery对form元素的常见操作详解
Jun 12 Javascript
JS数组去掉重复数据只保留一条的实现代码
Aug 11 Javascript
BootStrap 实现各种样式的进度条效果
Dec 07 Javascript
深入学习 JavaScript中的函数调用
Mar 23 Javascript
微信小程序返回上一级页面的实现代码
Jun 19 Javascript
原生js实现购物车
Sep 23 Javascript
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
Wordpress 相册插件 NextGEN-Gallery 添加目录将中文转为拼音的解决办法
2010/12/29 PHP
PHP设计模式之简单投诉页面实例
2016/02/24 PHP
如何利用预加载优化Laravel Model查询详解
2017/08/11 PHP
layui框架实现文件上传及TP3.2.3(thinkPHP)对上传文件进行后台处理操作示例
2018/05/12 PHP
php项目中类的自动加载实例讲解
2019/09/12 PHP
让低版本浏览器支持input的placeholder属性(js方法)
2013/04/03 Javascript
onkeypress字符按键兼容所有浏览器使用介绍
2013/04/24 Javascript
jquery如何判断某元素是否具备指定的样式
2013/11/05 Javascript
js控制table合并具体实现
2014/02/20 Javascript
jQuery基础语法实例入门
2014/12/23 Javascript
深入浅析jQuery对象$.html
2016/08/22 Javascript
jquery滚动条插件slimScroll使用方法
2017/02/09 Javascript
判断div滑动到底部的scroll实例代码
2017/11/15 Javascript
jQuery实现滚动效果
2017/11/17 jQuery
vue登录路由验证的实现
2017/12/13 Javascript
vue中实现图片和文件上传的示例代码
2018/03/16 Javascript
Angular 数据请求的实现方法
2018/05/07 Javascript
vue引入微信sdk 实现分享朋友圈获取地理位置功能
2019/07/04 Javascript
python发送邮件的实例代码(支持html、图片、附件)
2013/03/04 Python
python结合shell查询google关键词排名的实现代码
2016/02/27 Python
Python基于递归算法实现的走迷宫问题
2017/08/04 Python
python嵌套字典比较值与取值的实现示例
2017/11/03 Python
Python实现多进程共享数据的方法分析
2017/12/04 Python
Pycharm配置远程调试的方法步骤
2018/12/17 Python
python pygame实现球球大作战
2019/11/25 Python
Python实现搜索算法的实例代码
2020/01/02 Python
使用CSS3的appearance属性改变元素的外观的方法
2015/12/12 HTML / CSS
FC-Moto英国:欧洲最大的摩托车服装和头盔商店之一
2019/08/25 全球购物
室内设计专业个人的自我评价
2013/12/18 职场文书
简单的项目建议书模板
2014/03/12 职场文书
我们的节日中秋活动方案
2014/08/19 职场文书
法人代表资格证明书
2015/06/18 职场文书
工伤调解协议书
2016/03/21 职场文书
MySQL复制问题的三个参数分析
2021/04/07 MySQL
MySQL的Query Cache图文详解
2021/07/01 MySQL
CentOS安装Nginx并部署vue
2022/04/12 Servers