一、nodejs不支持ES6模块化规范的解决方案
在项目目录下新建src文件夹,src文件夹下新建m1.js模块和app.js模块:
m1.js模块中到处数据:
export let name = "nodejs";
export let age = 11;
app.js中导入模块:
import {name,age} from "./m1.js"
此时运行app.js会报错!!! SyntaxError: Unexpected token {
注意:nodejs 不支持 es6 模块化规范。 可以把这个代码转换一下,然后把 es6 规范转换为 commonjs 规范 学语法,兼容性如何不用管,可以交给第三方的转换工具(babel-cli 和 browserify)实现
解决:
1、在项目文件夹下生成生成 package.json 文件
yarn init -y 或者 npm init -y
2、安装第三方工具:
在任意目录下执行,全局安装babel-cli 和 browserify:
yarn global add babel-cli browserify 或者 npm install babel-cli browserify -g
在自己项目目录下执行:
yarn add babel-preset-es2015 或者 npm install babel-preset-es2015 --save-dev
3、在项目根目录新建 .babelrc 文件 :
{
"presets": [
"es2015"
]
}
4、在src目录下书写完代码后,执行:
babel src -d lib
(如果出现babel 不是内部或者外部命令,请按照如下链接查看yarn 全局安装后,命令不生效的解决办法)
(16条消息) nodejs不支持ES6模块化规范的解决方案_小尘的一天的博客-CSDN博客
5、运行lib下的app.js即可 node lib\app.js
(记得,修改代码需要执行babel src -d lib命令后,再运行lib下的app.js)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)