webpack最初的目标是实现前端项目模块化,旨在更高效的管理和维护项目中的每一个资源。
可以看做是模块打包机,分析你的项目结构,找到javascript模块以及其它一些浏览器不能直接运行的拓展语言(Scss、TypeScript等),并将其打包为合适的格式以供浏览器使用。
src/index.js,如果我们想要修改入口文件,可以在打包时使用命名npx webpack --entry ./src/main.js来进行打包dist目录,如果想要修改npx webpack --output-path ./build可以使用webpack配置文件进行配置(入口文件可以采用相对路径,出口文件只能采用绝对路径)
// webpack.config.js
const path = require('path')
module.exports = {
entry: './src/index.js',
output: {
filename: "build.js",
// path: './dist' //The provided value "./dist" is not an absolute path! 必须是绝对路径
path: path.resolve(__dirname, 'dist') //path.resolve(__dirname)__dirname, 在所有情况下,该变量都表示当前运行的js文件所在的目录,它是一个绝对路径,在此路径下新建一个dist目录,存放打包文件
}
}
// package.json
"build":"webpack --config test.webpack.json"