File tree 3 files changed +30
-0
lines changed
3 files changed +30
-0
lines changed Original file line number Diff line number Diff line change @@ -37,7 +37,30 @@ mpvueSimple.build() // => Promise
37
37
```
38
38
39
39
## changelog
40
+ #### ` 1.0.18 `
41
+
42
+ - 加入可选配置项 ` externals ` ,通过在webpack中增加external属性的方式,可以在打包的时候移除公共模块的引入,从而减小包大小。
43
+
44
+ 在构建脚本中进行如下定义:
45
+
46
+ ``` javascript
47
+ mpvueSimple .build ({
48
+ externals: {
49
+ sdk: ' require("../../../../sdk")' , // 公共模块的相对路径
50
+ },
51
+ })
52
+ ```
53
+
54
+ 在页面文件中进行如下引用:
55
+
56
+ ` ` ` javascript
57
+ import SDK from 'sdk'; // 注意这里的sdk,应为externals的key
58
+ ` ` `
59
+
60
+
61
+
40
62
41
63
#### ` 1.0.17`
64
+
42
65
- 加入可选配置项 ` output.jsonpFunction` ,mpvue 打包构建后会在 ` manifest.js` 中生生成全局的模块加载器函数 ` global.webpackJsonp` ,为防止和其它构建工具引起命名冲突,该默认函数名可在 output 配置中指定,示例如上。
43
66
Original file line number Diff line number Diff line change @@ -39,6 +39,7 @@ module.exports = {
39
39
resolveLoader : {
40
40
modules
41
41
} ,
42
+ externals : config . build . externals ,
42
43
module : {
43
44
rules : [
44
45
{
Original file line number Diff line number Diff line change @@ -101,6 +101,7 @@ function mergeArgvConfig (config) {
101
101
output : argvOutput , // pathString, undefined
102
102
config : argvCnf , // pathString, undefined
103
103
definePlugin : argvDefinePlugin , // object, undefined
104
+ externals : argvExternals , // object, undefined
104
105
...resetConfig
105
106
} = argv
106
107
const mpType = argvComponent ? 'component' : 'page'
@@ -142,6 +143,11 @@ function mergeArgvConfig (config) {
142
143
const assetsRoot = path . resolve ( outputPath )
143
144
defConfig . assetsRoot = assetsRoot
144
145
}
146
+
147
+ // 外部扩展
148
+ if ( argvExternals && typeof argvExternals === 'object' ) {
149
+ defConfig . externals = argvExternals
150
+ }
145
151
146
152
const allEntry = Object . keys ( defConfig . entry )
147
153
You can’t perform that action at this time.
0 commit comments