一个前端资源加载/打包工具
准备工作
- 安装 NodeJS
- npm 初始化
npm init
,或者使用 yarn 初始化yarn init
,生成 package.json 文件
安装webpack
这里我们使用本地安装最新版本的webpack,目前最新版本是 v4.43.0
在安装一个要打包到生产环境的安装包时,你应该使用
npm install --save
,如果你在安装一个用于开发环境的安装包(例如,linter, 测试库等),你应该使用npm install --save-dev
。请在 npm 文档 中查找更多信息。
1 | npm install --save-dev webpack |
使用 webpack 4+ 版本,还需要安装 CLI
1 | npm install --save-dev webpack-cli |
调整 package.json 文件,以便确保我们安装包是私有的(private),并且移除 main 入口,这可以防止意外发布你的代码
1 | { |
使用yarn安装webpack
1 | yarn add webpack@3.10.0 --dev |
配置文件
创建配置文件 webpack.config.js
一个简单的配置文件
1 | const path = require('path'); |
entry
需要打包的js文件output
打包后配置信息filename
打包后的js文件
管理资源 – 加载 CSS
安装扩展
为了从 JavaScript 模块中 import
一个 CSS 文件,你需要在 module 配置中 安装并添加 style-loader
和 css-loader
:
1 | npm install --save-dev style-loader css-loader |
配置文件
webpack.config.js
1 | module: { |
入口文件
引入样式文件
1 | import './style.css'; |
管理资源 – 加载图片
多版本webpack共存解决方案
需要处理的文件类型
- HTML -> html-webpack-plugin
脚本 -> babel + babel-preset-react
1
2
3yarn add babel-core@6.26.0 babel-preset-env@1.6.1 babel-loader@7.1.2 --dev
yarn add babel-preset-react@6.24.1 --dev
yarn add react@16.2.0 react-dom@16.2.0样式 -> css-loader + sass-loader
1
2
3
4yarn add style-loader@0.19.1 css-loader@0.28.8 --dev
yarn add extract-text-webpack-plugin@3.0.2 --dev
yarn add sass-loader@6.0.6 --dev
yarn add node-sass@4.7.2 --dev图片/字体 -> url-loader + file-loader
1
2yarn add file-loader@1.1.6 url-loader@0.6.2 --dev
yarn add font-awesome
webpack常用模块
html-webpack-plugin - html单独打包成文件
1
yarn add html-webpack-plugin@2.30.1 --dev
extract-text-webpack-plugin - 样式打包成单独文件
- CommonsChunkPlugin - 提出通用模块
webpack-dev-server
- 为webpack项目提供web服务
- 使用版本:2.9.7
- 更改代码自动刷新,路径换发
- yarn add webpack-dev-server@2.9.7 –dev
- 解决多版本共存问题
1
node_modules/.bin/webpack