安装:npm i -D babel-loader @babel/core @babel/preset-env
将js解析为低版本,这样就可以适配更多的浏览器了
modul: {
rules:[
{
test:/.\js$/,
// 一般只需要编译我们自己写的js文件,node_modules中的js文件是不需要编译的
// 通过配置exclude之设置为不用编译node_modules中的js文件
exclude:/node_modules/,
// 有参数的loader使用对象接收
use:{
loader:"babel-loader",
// 配置参数
options:{
// 预设(预先设置的)
presets:["@babel/preset-env"]
}
}
}
]
}
regeneratorRuntime插件
用于兼容async/await语法
安装: npm i @babel/runtime -D
npm i @babel/plugin-transform-runtime -D
module: {
rules:[
{
test:/\.js$/,
exclude:/node_modules/,
use: {
loader:"babel-loader",
options:{
presets:["@abel/preset-env"],
// 用于定义插件的插件,及@babel/plugin-transform-runtime是属于"babel-loader"的插件
plugins:[
[
"@babel/plugin-transform-runtime"
]
]
}
}
}
]
}
运行npx webpack 编译没有问题后,运行服务。