PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

如何解决es6 import报错问题

藏色散人
藏色散人 原创
2021-09-03 17:04:13 3204浏览

es6 import报错的解决办法:1、使用bebal把es6转化为es5;2、通过webpack进行打包,把所有的依赖都合并为一个文件,再使用babel进行转换即可。

本文操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

如何解决es6 import报错问题?

现在绝大多数的浏览器都不支持ES6,所以使用es6时需要使用bebal把es6转化为es5,

项目目录:

  • demo1:单个js文件的转化

src文件下的 test1.js    

const aa="this is test1";
console.log("this is from test1",aa);\

 

在项目根目录引入bebal文件

.babel

内容:

{
  presets:["es2015"]
}

 

安装babel-cli

cnpm i babel-cli -g

因为要转es6到es5所以还需要安装babel-preset-es2015

cnpm i babel-preset-es2015 --save-dev

转化test1.js

babel src --out-dir dist

(把src目录下的js文件转换成es5到dist文件下)

页面引入dist下的test1.js 运行不会报错

  • demo2:多个文件项目引入,并转化

src文件下:

test2.js

const bb="this is bb";
export {bb}

 

test3.js

import {bb} from 'test2.js'
console.log(bb);

 

转换 babel src --out-dir dist

页面引入dist文件下的test2.js test3.js

报错

9b0605e06a9533c90903f57c04c57e4.png

由于我们通过node;来编译ES6成es5,node模块就是参照CommonJS的规范来的,而且现在的浏览器和node都不支持大部分的ES6

解决办法

可以通过webpack进行打包,把所有的依赖都合并为一个文件,同时使用babel进行转换,然后再引入html文件中就可以了

推荐学习:《javascript基础教程

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。