webpack默认只能打包js文件,对于非js文件只能调用loader加载器才能打包,否则就会出错
2.修改webpack.config.js中的module->rules数组
module.exports = { mode: "development", module: { rules: [ {test: /\.css$/, use: ['style-loader', 'css-loader']} ] } }其中,test表示匹配文件类型, use表示调用加载器
less加载器需要css加载器,所以使用less加载器之前需要安装css 加载器
npm i less-loader less -D修改
module.exports = { mode: "development", module: { rules: [ {test: /\.css$/, use: ['style-loader', 'css-loader']}, {test: /\.less$/, use:['style-loader', 'css-loader', 'less-loader']} ] } }同样sass也需要css加载器 注意: 文件名后主是是 scss,加载器是sass-loader
其中,?之后的是loader的参数项 limit用来指定图片的大小,单位是字节,只有小于limit大小的,才会被转为 base64图片
babel转换器相关的包:
npm i babel-loader @babel/core @babel/runtime -Dbabel语法插件:
npm i @babel/preset-env @babel/plugin-transform-runtime @babel/plugin-proposal-class-properties-D在项目根目录,创建babel配置文件babel.config.js:
module.exports = { presets: ['@babel/preset-env'], plugins: ['@babel/plugin-transform-runtime', '@babel/plugin-proposal-class-properties'] };在webpack.config.js 的module->rules数组中,添加loader:
{test: /\.js$/, use: 'babel-loader', exclude: /node_modules/}exclude为排除项目,表示babel-loader不需要处理node_modules中的js文件
修改rules:
{test: /\.vue$/, loader: 'vue-loader'}