webpack
webpack是什么
webpack就是一个打包工具,浏览器只能识别.js.jpg等少部分的文件,通过webpack可以将一些不同文件后缀名的转换成浏览器可以识别的文件
webpack与node的关系
webpack 本身依赖于node执行,必须先安装node之后才能安装webpack,node安装之后会自带一个包管理工具npm,我们可以使用npm安装对应的包
webpack安装
webpack打包js文件
1 2 3 4
| #对main文件进行打包,这样子就会将main文件中所有引用的内容以及本身的内容进行打包,存放到budle.js文件中 webpack ./src/main.js ./dist/bundle.js
然后在主文件中我们只需要引用bundle.js就可以了
|
webpack配置文件
webpack配置文件
1 2 3 4 5 6 7 8 9 10
| webpack.config.js const path = require('path') # 导入node包,用于找到当前文件路径 module.exports ={ entry:'./src/main.js', #输入文件路径 output :{ path:path.resolve(__dirname,'dist'), #输出的文件夹路径,不能使用相对路径 filename : 'bundle.js' #输出的文件名称 }, }
|
package.json
package.json是通过npm init生成的,我们可以通过这个文件去知道这个项目的一些基本信息,以及做到类似makefile的功能
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| 1.执行命令 npm init #然后一路回车即可 2.package.json { "name": "practice", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "webpack" }, "author": "", "license": "ISC", "devDependencies": { "webpack": "^3.6.0" } }
|
loader
webpack 打包直接下载后只能支持基础的打包,如果想要支持css获其余类型文件的打包必须要下载对应的loader
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| 官方文档地址https://webpack.docschina.org/loaders/css-loader (1)安装 npm install --save-dev css-loader //这个loader只负载加载,如果想要css文件生效还需要style-loader npm install --save-dev style-loader //这个loader负责渲染 (2)配置 webpack.config.js module.exports = { module: { rules: [ { test: /\.css$/i, //这里是正则表达式,代表对所有的css文件进行匹配,去执行下面的loader use: ["style-loader", "css-loader"], }, ], }, };
|