webpack核心概念:
1、entry (入口)
入口起点 (entry point) 指示 webpack 应该是用于那一模块,来作为构建其内部依赖的开始
module.exports = {
entry:"path/tu/my/entry/file.js"
}
2、output (出口)
output 属性告诉 webpack 在那里输出他所创建的bundle,以及如何命名这些文件
const path = require('path')
module.exports = {
entry:"path/tu/my/entry/file.js",
output:{
path:path.resolve(__dirname,'dist'),
filename:'my-first-webpack.bundle.js'
}
}
3、loader (处理不同的文件类型)
loader 让 webpack 能够去处理其他类型的文件,并将他们转化为有效的模块
const path = require('path')
module.exports = {
output:{
filename:'my-first-webpack.bundle.js'
},
module:{
rules:[{
test:/\.txt$/,
use:'raw-loader'
}]
}
}
4、plugin (插件)
loader 用于转换某些类型的模块,而插件则可以用于执行范围更广的任务。
const HtmlWebpackPlugin = require("html-webpack-plugin")
const webpack = require("webpack");
module.exports = {
module:{
rules:[{
test:/\.txt/,
use:"raw-loader"
}]
},
plugin:[
new.HtmlWebpackPlugin({
template:'./src/index.html'
})
]
}
5、mode (模式)
<!-- 开发环境 生产环境 -->
通过选择development , production 或 none 来告知webpack使用相应的模式的内置优化。
module .exports ={
mode:"production"
}