From ea6941a557f383f84b5d8e46d55db4216f352003 Mon Sep 17 00:00:00 2001 From: guchengwei Date: Mon, 7 Jan 2019 15:50:49 +0800 Subject: [PATCH 1/7] add external option --- build/webpack.base.conf.js | 1 + config/argv.js | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/build/webpack.base.conf.js b/build/webpack.base.conf.js index c16ce4b..736dfc2 100644 --- a/build/webpack.base.conf.js +++ b/build/webpack.base.conf.js @@ -39,6 +39,7 @@ module.exports = { resolveLoader: { modules }, + externals: config.build.externals, module: { rules: [ { diff --git a/config/argv.js b/config/argv.js index 490c39a..59f0fd3 100644 --- a/config/argv.js +++ b/config/argv.js @@ -101,6 +101,7 @@ function mergeArgvConfig (config) { output: argvOutput, // pathString, undefined config: argvCnf, // pathString, undefined definePlugin: argvDefinePlugin, // object, undefined + externals: argvExternals, // object, undefined ...resetConfig } = argv const mpType = argvComponent ? 'component' : 'page' @@ -142,6 +143,11 @@ function mergeArgvConfig (config) { const assetsRoot = path.resolve(outputPath) defConfig.assetsRoot = assetsRoot } + + // 外部扩展 + if (argvExternals && typeof argvExternals === 'object') { + defConfig.externals = argvExternals + } const allEntry = Object.keys(defConfig.entry) From 9ccf66227e78a28630a98c0d5e5f593ac66d3b86 Mon Sep 17 00:00:00 2001 From: guchengwei Date: Mon, 7 Jan 2019 16:21:34 +0800 Subject: [PATCH 2/7] add changelog in README --- README.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/README.md b/README.md index 56d1267..47eb40c 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,30 @@ mpvueSimple.build() // => Promise ``` ## changelog +#### `1.0.18` + +- 加入可选配置项 `output.external`,通过在webpack中增加external属性的方式,可以在打包的时候移除公共模块的引入,从而减小包大小。 + + 在构建脚本中进行如下定义: + + ```javascript + mpvueSimple.build({ + externals: { + sdk: 'require("../../../../sdk")', // 公共模块的相对路径 + }, + }) + ``` + + 在页面文件中进行如下引用: + + ```javascript + import SDK from 'sdk'; // 注意这里的sdk,应为externals的key + ``` + + + #### `1.0.17` + - 加入可选配置项 `output.jsonpFunction`,mpvue 打包构建后会在 `manifest.js` 中生生成全局的模块加载器函数 `global.webpackJsonp`,为防止和其它构建工具引起命名冲突,该默认函数名可在 output 配置中指定,示例如上。 From acc52855122027cf445707910657a2696be4a6ae Mon Sep 17 00:00:00 2001 From: guchengwei Date: Mon, 7 Jan 2019 16:24:27 +0800 Subject: [PATCH 3/7] update --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 47eb40c..8938e4b 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ mpvueSimple.build() // => Promise ## changelog #### `1.0.18` -- 加入可选配置项 `output.external`,通过在webpack中增加external属性的方式,可以在打包的时候移除公共模块的引入,从而减小包大小。 +- 加入可选配置项 `external`,通过在webpack中增加external属性的方式,可以在打包的时候移除公共模块的引入,从而减小包大小。 在构建脚本中进行如下定义: From 116730877fb802e882c90654b117d58f70d75b9b Mon Sep 17 00:00:00 2001 From: guchengwei Date: Mon, 7 Jan 2019 16:25:10 +0800 Subject: [PATCH 4/7] update --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8938e4b..8b902ad 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ mpvueSimple.build() // => Promise ## changelog #### `1.0.18` -- 加入可选配置项 `external`,通过在webpack中增加external属性的方式,可以在打包的时候移除公共模块的引入,从而减小包大小。 +- 加入可选配置项 `externals`,通过在webpack中增加external属性的方式,可以在打包的时候移除公共模块的引入,从而减小包大小。 在构建脚本中进行如下定义: From f987a195366d5813016158a3aedf61cbf67b3f8f Mon Sep 17 00:00:00 2001 From: guchengwei Date: Mon, 7 Jan 2019 16:27:37 +0800 Subject: [PATCH 5/7] update --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8b902ad..cddd5cc 100644 --- a/README.md +++ b/README.md @@ -45,8 +45,8 @@ mpvueSimple.build() // => Promise ```javascript mpvueSimple.build({ - externals: { - sdk: 'require("../../../../sdk")', // 公共模块的相对路径 + externals: { + sdk: 'require("../../../../sdk")', // 公共模块的相对路径 }, }) ``` From d27486c18642471778757217ce848130f462bb87 Mon Sep 17 00:00:00 2001 From: guchengwei Date: Mon, 7 Jan 2019 16:28:54 +0800 Subject: [PATCH 6/7] update --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cddd5cc..73872f6 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ mpvueSimple.build() // => Promise ```javascript mpvueSimple.build({ externals: { - sdk: 'require("../../../../sdk")', // 公共模块的相对路径 + sdk: 'require("../../../../sdk")', // 公共模块的相对路径 }, }) ``` From 22b709b6ef09ccdf4e9397ba23a076a5f138dcd6 Mon Sep 17 00:00:00 2001 From: guchengwei Date: Mon, 7 Jan 2019 16:24:27 +0800 Subject: [PATCH 7/7] format md style --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 47eb40c..73872f6 100644 --- a/README.md +++ b/README.md @@ -39,13 +39,13 @@ mpvueSimple.build() // => Promise ## changelog #### `1.0.18` -- 加入可选配置项 `output.external`,通过在webpack中增加external属性的方式,可以在打包的时候移除公共模块的引入,从而减小包大小。 +- 加入可选配置项 `externals`,通过在webpack中增加external属性的方式,可以在打包的时候移除公共模块的引入,从而减小包大小。 在构建脚本中进行如下定义: ```javascript mpvueSimple.build({ - externals: { + externals: { sdk: 'require("../../../../sdk")', // 公共模块的相对路径 }, })