Skip to content

Commit a9cb625

Browse files
committed
added another dedupe example
1 parent fcc0c5f commit a9cb625

File tree

6 files changed

+220
-0
lines changed

6 files changed

+220
-0
lines changed

examples/buildAll.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ var cmds = [
1717
"cd labeled-modules && node build.js",
1818
"cd component && node build.js",
1919
"cd dedupe && node build.js",
20+
"cd code-splitted-dedupe && node build.js",
2021
];
2122

2223
var stack = function() {
Lines changed: 179 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,179 @@
1+
2+
# example.js
3+
4+
``` javascript
5+
// index.js and x.js can be deduplicated
6+
require(["../dedupe/a", "bundle?lazy!../dedupe/b"]);
7+
8+
```
9+
10+
# js/1.output.js
11+
12+
``` javascript
13+
webpackJsonp([1],
14+
{
15+
16+
/***/ 1:
17+
/*!***************************************************************************************************************************!*\
18+
!*** (webpack)/~/bundle-loader?lazy!../dedupe/b/index.js ***!
19+
\***************************************************************************************************************************/
20+
/***/ function(module, exports, require) {
21+
22+
module.exports = function(cb) {
23+
require.e/*nsure*/(2, function(require) {
24+
cb(require(/*! !../dedupe/b/index.js */ 6));
25+
});
26+
}
27+
28+
/***/ },
29+
30+
/***/ 2:
31+
[9, 4, 5],
32+
33+
/***/ 3:
34+
/*!**********************!*\
35+
!*** ../dedupe/z.js ***!
36+
\**********************/
37+
/***/ function(module, exports, require) {
38+
39+
module.exports = {"this is": "z"};
40+
41+
/***/ },
42+
43+
/***/ 4:
44+
/*!************************!*\
45+
!*** ../dedupe/a/x.js ***!
46+
\************************/
47+
/***/ function(module, exports, require) {
48+
49+
module.exports = {"this is": "x"};
50+
51+
/***/ },
52+
53+
/***/ 5:
54+
/*!************************!*\
55+
!*** ../dedupe/a/y.js ***!
56+
\************************/
57+
/***/ function(module, exports, require) {
58+
59+
module.exports = {"this is": "y", "but in": "a"};
60+
61+
/***/ },
62+
63+
/***/ 9:
64+
/*!********!*\
65+
!*** ***!
66+
\********/
67+
/***/ function(module, exports, require, __webpack_module_template_argument_0__, __webpack_module_template_argument_1__) {
68+
69+
module.exports = {
70+
x: require(__webpack_module_template_argument_0__),
71+
y: require(__webpack_module_template_argument_1__),
72+
z: require(/*! ../z */ 3)
73+
}
74+
75+
/***/ }
76+
77+
}
78+
)
79+
```
80+
81+
# js/2.output.js
82+
83+
``` javascript
84+
webpackJsonp([2],
85+
{
86+
87+
/***/ 6:
88+
[9, 7, 8],
89+
90+
/***/ 7:
91+
4,
92+
93+
/***/ 8:
94+
/*!************************!*\
95+
!*** ../dedupe/b/y.js ***!
96+
\************************/
97+
/***/ function(module, exports, require) {
98+
99+
module.exports = {"this is": "y", "but in": "b"};
100+
101+
/***/ }
102+
103+
}
104+
)
105+
```
106+
107+
# Info
108+
109+
## Uncompressed
110+
111+
```
112+
Hash: 81148181bfb1b39e2c48
113+
Version: webpack 0.10.0-beta20
114+
Time: 78ms
115+
Asset Size Chunks Chunk Names
116+
output.js 4424 0 [emitted] main
117+
1.output.js 1548 1 [emitted]
118+
2.output.js 261 2 [emitted]
119+
chunk {0} output.js (main) 94 [rendered]
120+
[0] ./example.js 94 {0} [built]
121+
chunk {1} 1.output.js 508 {0} [rendered]
122+
[1] (webpack)/~/bundle-loader?lazy!../dedupe/b/index.js 231 {1} [built]
123+
amd require bundle?lazy!../dedupe/b [0] ./example.js 2:0-51
124+
[2] ../dedupe/a/index.js 80 {1} [built]
125+
amd require ../dedupe/a [0] ./example.js 2:0-51
126+
[3] ../dedupe/z.js 34 {1} [built]
127+
cjs require ../z [2] ../dedupe/a/index.js 4:4-19
128+
cjs require ../z [6] ../dedupe/b/index.js 4:4-19
129+
[4] ../dedupe/a/x.js 34 {1} [built]
130+
cjs require ./x [2] ../dedupe/a/index.js 2:4-18
131+
[5] ../dedupe/a/y.js 49 {1} [built]
132+
cjs require ./y [2] ../dedupe/a/index.js 3:4-18
133+
[9] 80 {1} [not cacheable] [built]
134+
template 3 [2] ../dedupe/a/index.js
135+
template 3 [6] ../dedupe/b/index.js
136+
chunk {2} 2.output.js 163 {1} [rendered]
137+
[6] ../dedupe/b/index.js 80 {2} [built]
138+
cjs require !!(webpack)\examples\dedupe\b\index.js [1] (webpack)/~/bundle-loader?lazy!../dedupe/b/index.js 3:5-150
139+
[7] ../dedupe/b/x.js 34 {2} [built]
140+
cjs require ./x [6] ../dedupe/b/index.js 2:4-18
141+
[8] ../dedupe/b/y.js 49 {2} [built]
142+
cjs require ./y [6] ../dedupe/b/index.js 3:4-18
143+
```
144+
145+
## Minimized (uglify-js, no zip)
146+
147+
```
148+
Hash: 81148181bfb1b39e2c48
149+
Version: webpack 0.10.0-beta20
150+
Time: 172ms
151+
Asset Size Chunks Chunk Names
152+
output.js 1096 0 [emitted] main
153+
1.output.js 292 1 [emitted]
154+
2.output.js 88 2 [emitted]
155+
chunk {0} output.js (main) 94 [rendered]
156+
[0] ./example.js 94 {0} [built]
157+
chunk {1} 1.output.js 508 {0} [rendered]
158+
[1] (webpack)/~/bundle-loader?lazy!../dedupe/b/index.js 231 {1} [built]
159+
amd require bundle?lazy!../dedupe/b [0] ./example.js 2:0-51
160+
[2] ../dedupe/a/index.js 80 {1} [built]
161+
amd require ../dedupe/a [0] ./example.js 2:0-51
162+
[3] ../dedupe/z.js 34 {1} [built]
163+
cjs require ../z [2] ../dedupe/a/index.js 4:4-19
164+
cjs require ../z [6] ../dedupe/b/index.js 4:4-19
165+
[4] ../dedupe/a/x.js 34 {1} [built]
166+
cjs require ./x [2] ../dedupe/a/index.js 2:4-18
167+
[5] ../dedupe/a/y.js 49 {1} [built]
168+
cjs require ./y [2] ../dedupe/a/index.js 3:4-18
169+
[9] 80 {1} [not cacheable] [built]
170+
template 3 [2] ../dedupe/a/index.js
171+
template 3 [6] ../dedupe/b/index.js
172+
chunk {2} 2.output.js 163 {1} [rendered]
173+
[6] ../dedupe/b/index.js 80 {2} [built]
174+
cjs require !!(webpack)\examples\dedupe\b\index.js [1] (webpack)/~/bundle-loader?lazy!../dedupe/b/index.js 3:5-150
175+
[7] ../dedupe/b/x.js 34 {2} [built]
176+
cjs require ./x [6] ../dedupe/b/index.js 2:4-18
177+
[8] ../dedupe/b/y.js 49 {2} [built]
178+
cjs require ./y [6] ../dedupe/b/index.js 3:4-18
179+
```
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
require("../build-common");
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
// index.js and x.js can be deduplicated
2+
require(["../dedupe/a", "bundle?lazy!../dedupe/b"]);
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
2+
# example.js
3+
4+
``` javascript
5+
{{example.js}}
6+
```
7+
8+
# js/1.output.js
9+
10+
``` javascript
11+
{{js/1.output.js}}
12+
```
13+
14+
# js/2.output.js
15+
16+
``` javascript
17+
{{js/2.output.js}}
18+
```
19+
20+
# Info
21+
22+
## Uncompressed
23+
24+
```
25+
{{stdout}}
26+
```
27+
28+
## Minimized (uglify-js, no zip)
29+
30+
```
31+
{{min:stdout}}
32+
```
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
module.exports = {
2+
optimize: {
3+
dedupe: true
4+
}
5+
}

0 commit comments

Comments
 (0)