在实际开发过程中,webpack默认只能打包处理.js文件,非,js文件,需要调用loader加载器才可以正常打包。
loader加载器可以协助webpack打包处理特定文件模块
– css文件打包处理
module.exports={
module:{//所有第三方文件模板的匹配规则
rules:[
//打包处理css文件
{test:/\.css$/,use:['style-loader','css-loader']},
]
}
}
test -->配置的文件类型
use–>调用的loader
– scss文件打包处理
module.exports={
module:{//所有第三方文件模板的匹配规则
rules:[
//打包处理scss文件
{test:/\.scss$/,use:['style-loader','css-loader','sass-loader']}
]
}
}
– less文件打包处理
module.exports={
module:{//所有第三方文件模板的匹配规则
rules:[
//打包处理less文件
{test:/\.less$/,use:['style-loader','css-loader','less-loader']},
]
}
}
– 自动添加css浏览器兼容前缀
const autoprefixer=require('autoprefixer')//导入添加兼容前缀的插件
module.exports={
plugins:[autoprefixer]//挂在插件
}
module.exports={
module:{//所有第三方文件模板的匹配规则
rules:[
//处理添加css文件中兼容前缀
{test:/\.css$/,use:['style-loader','css-loader','postcss-loader']},
]
}
}
如果配置过css文件打包配置,直接在其后面添加‘postcss-loader’
– 配置打包样式表中的图片和字体文字
在css中background-image: url(‘路径’);,打包时会报错。所以需要以下配置。
module.exports={
module:{//所有第三方文件模板的匹配规则
rules:[
//打包样式表中图片文字文件
{test:/\.jpg|png|gif|bmp|ttf|eot|svg|woff|woff2$/,use:'url-loader?limit=19342'},
]
}
}
?之后是loader的参数项,limit 用来指定图片大小,单位字节(byte)。只有小于linit的图片才会白转为base64格式
– 打包js文件中高级语法
module.exports = {
presets:['@babel/preset-env'],
plugins:['@babel/plugin-transform-runtime','@babel/plugin-proposal-class-properties']
}
————————————————
版权声明:本文为CSDN博主「can of love」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40666120/article/details/106164598
module.exports={
module:{//所有第三方文件模板的匹配规则
rules:[
//配置js高级语法
{test: /\.js$/,use: 'babel-loader',exclude:/node_modules/}
]
},
}
exclude:排除/node_modules/中的.js文件
– vue单文件组件加载器
在项目中组件的运用是很多的,如果都将组件写入一个文件中,不太现实,所以需要.vue单文件组件,来便捷组件的开发与运用。
const VueLoaderPlugin=require('vue-loader/lib/plugin')//导入插件
module.exports={
module:{//所有第三方文件模板的匹配规则
rules:[
//加载打包vue文件规则
{test:/\.vue$/,loader:'vue-loader'}
]
},
//plugin数组->webpack打包用到的插件
plugins:[htmlPlugin,new VueLoaderPlugin()],
}