Node JS 入坑第一话之import

注意:本文记录我在学习和使用中的笔记, 部分内容可能有误, 仅作为各位朋友的参考, 欢迎批评指正,共同学习提高, 谢谢 :)

今日学习import 与 require区别时,import 语句总是报错,试了很久以为是自己写错,其实是NODEJS 只实现了部分 ES6语法, import 就是没有被实现。

例如require:

  1. 定义一个模块
// cat.js
module.exports = {
  eat : function() {
    console.info ('miaomiao!!')
  },
  name: 'Tom'
};
  1. 调用这个模块
// index.js
var cat = require('./cat')
cat.eat()
  1. 执行结果


    执行结果

例如import:

  1. 调用这个模块
// index.js
import { cat } = require('./cat')
cat.eat()
  1. 执行结果


    执行失败

总结

因为NodeJS只支持部分ES6的语法,有些ES6语法还不支持,而import语法就是其中一个;

解决方案

方案一

改为require, ES6语法修改为ES5语法,例如

// index.js
const cat = require('./cat')
cat.eat()

方案二

安装Babel-cli插件,将ES6转换为ES5;
参考:Babel-cli将ES6转换ES5

参考文献:

  • http://es6.ruanyifeng.com/?search=import&x=0&y=0#docs/module
  • http://www.runoob.com/nodejs/nodejs-module-system.html
  • https://www.cnblogs.com/tianxiaxuange/p/10133809.html
  • https://blog.csdn.net/niuba123456/article/details/82026634
  • http://www.ecma-international.org/ecma-262/6.0/#sec-imports

你可能感兴趣的:(Node JS 入坑第一话之import)