博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Webpack 入门
阅读量:6307 次
发布时间:2019-06-22

本文共 1975 字,大约阅读时间需要 6 分钟。

Webpack 入门

**

本文所有示例基于 webpack2。

文中的示例代码说明可以参考:

安装

本地安装

$ npm install --save-dev webpack$ npm install --save-dev webpack@

如果你在项目中使用了 npmnpm 首先会在本地模块中寻找 webpack。这是一个实用的小技巧。

"scripts": {
"start": "webpack --config mywebpack.config.js"}

上面是 npm 的标准配置,也是我们推荐的实践。

 当你在本地安装 webpack 后,你能够从 node_modules/.bin/webpack 访问它的 bin 版本。

全局安装

$ npm install --global webpack

webpack 命令现在可以全局执行了。

创建一个 bundle 文件

创建一个 app/index.js 文件。

document.write('

Hello World

');

创建一个 index.html 文件。

执行命令

$ webpack ./app/index.js ./dist/bundle.js

这条命令的第一个参数为输入文件,第二个参数为输出文件。

会在目录下生成一个 dist/bundle.js 文件,它已打包所需的所有代码的输出文件。

在浏览器中打开 index.html 文件。

完整示例: ()

webpack.config.js

webpack.config.jswebpack 默认的配置文件,当执行 webpack 命令时,webpack 会在当前目录下自动搜索 webpack.config.js 文件。

单入口(Entry)

基于 () 的代码,新建一个 webpack.config.js 文件,内容如下:

const path = require('path');module.exports = {
// 这里应用程序开始执行 // webpack 开始打包 entry: "./app/index.js", // webpack 如何输出结果的相关选项 output: {
// 所有输出文件的目标路径 // 必须是绝对路径(使用 Node.js 的 path 模块) path: path.resolve(__dirname, "dist"), // 「入口分块(entry chunk)」的文件名模板(出口分块?) filename: "bundle.js", }};

执行命令

$ webpack

在浏览器中打开 index.html 文件。

完整示例: ()

多入口(Entry)

如果有多个入口文件怎么办?很简单,我们来看一个示例:

新建 app/about.js 文件

document.write('

ABOUT

');

新建 app/home.js 文件

document.write('

HOME

');

新建 index.html 文件

新建 webpack.config.js 文件

const path = require('path');module.exports = {
// 这里应用程序开始执行 // webpack 开始打包 // 本例中 entry 为多入口 entry: {
home: './app/home.js', about: './app/about.js' }, // webpack 如何输出结果的相关选项 output: {
// 所有输出文件的目标路径 // 必须是绝对路径(使用 Node.js 的 path 模块) path: path.resolve(__dirname, "dist"), // 「入口分块(entry chunk)」的文件名模板(出口分块?) // filename: "bundle.js", // 用于多个入口点(entry point)(出口点?) filename: "[name].js", // 用于多个入口点(entry point)(出口点?) // filename: "[chunkhash].js", // 用于长效缓存 // filename: "[name].[chunkhash].js", // 用于长效缓存 }};

执行命令

$ webpack

在浏览器中打开 index.html 文件。

完整示例: ()

Webpack 系列教程

欢迎阅读其它内容:

转载地址:http://ugixa.baihongyu.com/

你可能感兴趣的文章
原产地政策,jsonp跨域
查看>>
HDU 1143 Tri Tiling(递归)
查看>>
ffmpeg参数具体解释
查看>>
记一次公司仓库数据库服务器死锁过程
查看>>
Oracle 11g password过期被锁定报道 ORA-28000 the account is locked
查看>>
【Struts2学习笔记(2)】Action默认值和配置Action于result各种转发类型
查看>>
轨磁条简介
查看>>
(算法)交错的字符串
查看>>
hdu 5471(状压DP or 容斥)
查看>>
oracle.jdbc.driver.OracleDriver和oracle.jdbc.OracleDriver这两个驱动的区别
查看>>
NSQ部署
查看>>
git常用命令记录
查看>>
IBM发布新一代云计算工具包MobileFirst Foundation
查看>>
唯品会HDFS性能挑战和优化实践
查看>>
大规模学习该如何权衡得失?解读NeurIPS 2018时间检验奖获奖论文
查看>>
大厂前端高频面试问题与答案精选
查看>>
我们用5分钟写了一个跨多端项目
查看>>
Visual Studio 15.4发布,新增多平台支持
查看>>
有赞透明多级缓存解决方案(TMC)设计思路
查看>>
如何设计高扩展的在线网页制作平台
查看>>