webpack配置详解 - 31.module
loader 让 webpack 能够去处理那些非 JavaScript 文件(webpack 自身只理解 JavaScript)。
loader 可以将所有类型的文件转换为 webpack 能够处理的有效模块,然后你就可以利用 webpack 的打包能力,对它们进行处理。
本质上,webpack loader 将所有类型的文件,转换为应用程序的依赖图(和最终的 bundle)可以直接引用的模块。
1.文件结构

2.代码
add.js
function add(x, y) { return x + y } export default add
count.js
function count(x, y) { return x - y } export default count
index.js
// import add from './add' // import count from './count' console.log('index.js文件加载了') //chunkFilename 非入口文件名称 import('./add') //结构赋值,提取default,重命名为 add .then(({default:add})=>{ console.log(add(1,2)); }) // console.log(add(1, 2)) // console.log(count(5, 3))
webpack.config.js
const {resolve} = require('path')
const htmlWebpackPlugin = require('html-webpack-plugin')
module.exports = {
entry: './src/index.js',
output: {
filename: "js/[name].js",
path: resolve(__dirname, 'build'),
},
module: {
rules: [
{
test: /\.css$/,
// 多个loader用use
use:['style-loader','css-loader']
},
{
test: /\.js$/,
//排除 node_modules 下的js文件
exclude: /node_modules/,
//只检查 src 下的js文件
include: resolve(__dirname,'src'),
//优先执行
enforce: "pre",
//不声明 enforce 就是中间执行
// 延后执行
// enforce:'post',
// 单个loader用loader
loader: 'eslint-loader',
options: {}
},
//以下配置只有一个会生效
{
oneOf: []
}
]
},
plugins: [new htmlWebpackPlugin()],
mode: 'development'
}
3.打包
$ webpack


浙公网安备 33010602011771号