安装部分不介绍了

(一)第一个最简单的demo,单入口,单文件

目录结构:

webapck.config.js中代码:

'use strict'
const path = require('path'); module.exports = {
entry:{
main:'./main.js' //入口文件
},
output:{
path: path.resolve(__dirname, './dist'),
filename:'main.js' //输出的文件
}
}

main.js中的代码

require('./static/js/main1.js')
console.log('I`m main.js');

我是通过npm脚本运行的webpack

{
"name": "demo1",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"build": "webpack"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"webpack": "^3.10.0"
}
}

在控制台输入

npm run build

我们就看到了在dist文件夹是生成了 main.js文件,这个就是打包出来了。里面包含了main.js,main1.js

(二)单一入口,模块重复引用

我们现在变一下main.js,和main1.js

main.js

require('./static/js/main1.js')
require('./static/js/main2.js')
console.log('I`m main.js');

main1.js

require("./main2.js");
var chunk1=;
exports.chunk1=chunk1;

就是main.js里引用了main1.js,main2.js,而main1.js中也引用了main2.js

生成的main.js中是

/***/ (function(module, exports, __webpack_require__) {

__webpack_require__()
__webpack_require__()
console.log('I`m main.js'); /***/ }),
/* 2 */
/***/ (function(module, exports, __webpack_require__) { __webpack_require__();
var chunk1=;
exports.chunk1=chunk1; /***/ })
/******/ ]);

可以看到main2.js的模块id是0,main.js的模块id是1,main1.js的模块id是2

webpack引用使用的是模块id

(三)多个entry入口,分文件输出

修改webpack.config.js

module.exports = {
entry:{
main:'./main.js',
main:'./maindemo.js'
},
output:{
path: path.resolve(__dirname, './dist'),
filename:'[name].js'
}
}

其中main.js与maindemo.js的代码一致同上面的一样

在dist中生成main.js

/***/ (function(module, exports) {

var chunk2=;
exports.chunk2=chunk2;
console.log('chunk2') /***/ }),
/* 1 */
/***/ (function(module, exports, __webpack_require__) { __webpack_require__()
__webpack_require__()
console.log('I`m maindemo.js'); /***/ }),
/* 2 */
/***/ (function(module, exports, __webpack_require__) { __webpack_require__();
var chunk1=;
exports.chunk1=chunk1;
console.log('chunk1') /***/ })

(三)多个entry入口 ,一个文件输出

module.exports = {
entry:{
main:'./main.js',
main:'./maindemo.js'
},
output:{
path: path.resolve(__dirname, './dist'),
filename:'bundle.js'
}
}

成生的build.js与上面生成的main.js是一样的

上面的这些是最基本的使用webpack,并没有使用插件,接下来我们认识一下

CommonsChunkPlugin

http://www.cnblogs.com/myzy/p/8427782.html

webpack 简单笔记(一)的更多相关文章

  1. webpack简单笔记

    本文简单记录学习webpack3.0的笔记,已备日后查阅.节省查阅文档时间 安装 可以使用npm安装 //全局安装 npm install -g webpack //安装到项目目录 npm insta ...

  2. webpack 简单笔记(三)vue-cli 使用 webpack-bundle-analyzer 分析

    当我们使用CommonsChunkPlugin插件时可以使用webpack-bundle-analyzer插件来分析分块是否达到我们的目地 安装 npm install --save-dev webp ...

  3. webpack 简单笔记(二)CommonsChunkPlugin插件

    接下来就要使用CommonsChunkPlugin插件 (一)单一入口,模块单一引用,分文件输出,单一入口,模块重复引用,分文件输 main.js代码 require('./static/js/mai ...

  4. 【原】webpack学习笔记

    之前在react的项目中有用过webpack,不过没有认真的去研究,这段时间又重新好好的学习一下webpack,发觉 webpack是一个很强大的东西.而且很好用,方便,接下来主要是做一下学习的笔记 ...

  5. mybatis-config.xml简单笔记

    mybatis-config.xml简单笔记 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ...

  6. applicationContext.xml简单笔记

    applicationContext.xml简单笔记 <?xml version="1.0" encoding="UTF-8"?> <bean ...

  7. Python学习笔记2-flask-sqlalchemy 简单笔记

    flask-sqlalchemy 简单笔记 字数 阅读 评论 喜欢 flask-sqlalchemy SQLAlchemy已经成为了python世界里面orm的标准,flask是一个轻巧的web框架, ...

  8. webpack入门笔记

    此为第一篇主要是webpack入门笔记: http://if-true.com/2015/10/16/webpack-tutorial-translate.html

  9. Android_简单笔记一

    入门学习Android的简单笔记(已经安装好了开发环境ADT) 一.关于 AndroidManifest.xml文件 1. android:icon和android:label定义了应用程序安装后显示 ...

随机推荐

  1. UML关系类图

    在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit ...

  2. 1 visual studio code 配置C++开发环境 (windows 开发环境)

    0 引言 最近帮GF(不幸变成ex了)配置C++开发环境,一开始想给她装个visual studio13完事,但是一想到自己安装以及使用时的诸多麻烦,就有点退却,觉得没有这个必要.正好了解到vscod ...

  3. delphi directui 做界面的一个例子

    现在很多CS系统或者软件界面都做的非常好看,比如:QQ皮肤,迅雷下载,360杀毒界面等.这些都是运用的流行的DIRECTUI 技术,基本上有的资料都是基于C++的,很少有同仁将C++下的DIRECT ...

  4. NOIp2018集训test-10-15 (bike day1)

    B 君的第一题 求斐波那契数列模n的循环节. 1.暴力bsgs,毕姥爷好像说循环节最大是6*n还是多少的,反之比较小,直接bsgs这题是可以过的.但是我非常蠢重载运算符的时候把相等返回成了小于,然后根 ...

  5. iOS 点击Application icon加载推送通知Data

    今天做APNS远程推送通知遇到了一个问题,就是手机接收到通知的时候,如果马上点击通知的 alert view时候,系统马上唤醒你的Application,通知或调用你的didReceiveLocalN ...

  6. 数据结构C++版-队列

    一.概念 分类: 二.补充说明 1.<面向对象的队列设计>课程问答: 首先要明确数据结构和数据存储结构的概念. 数据结构是指数据对象之间的逻辑关系,例如二叉树,队列,栈等,而数据存储结构是 ...

  7. JavaScript笔记 – 程序语法设计

    一.基础语法设计 JavaScript是可以与HTML标记语言混合.用于网页交互式的解释型脚本语言.由国际标准ECMAScript提供核心语言功能.文档对象模型(DOM)提供访问和操作网页内容的方法和 ...

  8. java: java中的 getInstance() 的理解

    原文地址:https://blog.csdn.net/qq_26293573/article/details/78184844 在单例模式下使用 . 单例模式:所谓单例模式就是一个类有且只有一个实例, ...

  9. BBB 常用指令

    source .bashrc root@beaglebone:~# route add default gw 192.168.7.1 echo BB-SPIDEV0 > /sys/devices ...

  10. day5:函数练习题

    1.写函数,检查获取传入列表或者元祖的对象的所有奇数位索引的元素,并将作为新的列表返回给调用者 #解1: def lis(x): lis_1 = [] for i in range(len(x)): ...