From ccf491f1e813a16c44ddd500c32ac4bfb0be84c1 Mon Sep 17 00:00:00 2001 From: lihong Date: Tue, 8 Feb 2022 14:16:19 +0800 Subject: [PATCH] lihong67@huawei.com exclude commonjs bundle. Signed-off-by: lihong Change-Id: I0ea70cc94b247f009e6d21a3907314ab23ceb6d4 --- compiler/main.js | 1 + compiler/webpack.config.js | 48 +++++++++++++++++++++----------------- 2 files changed, 28 insertions(+), 21 deletions(-) diff --git a/compiler/main.js b/compiler/main.js index 570b6c0..aa25d1a 100644 --- a/compiler/main.js +++ b/compiler/main.js @@ -73,6 +73,7 @@ function loadEntryObj(projectConfig) { const jsonString = fs.readFileSync(projectConfig.manifestFilePath).toString(); manifest = JSON.parse(jsonString); } else if (projectConfig.aceModuleJsonPath && fs.existsSync(projectConfig.aceModuleJsonPath)) { + process.env.compileMode = 'moduleJson'; buildManifest(manifest, projectConfig.aceModuleJsonPath); } else { throw Error('\u001b[31m ERROR: the manifest file ' + projectConfig.manifestFilePath + diff --git a/compiler/webpack.config.js b/compiler/webpack.config.js index c7f148a..d9d0cd6 100644 --- a/compiler/webpack.config.js +++ b/compiler/webpack.config.js @@ -46,27 +46,6 @@ function initConfig(config) { poll: false, ignored: /node_modules/ }, - optimization: { - splitChunks: { - chunks(chunk) { - return !/^\.\/workers\//.test(chunk.name); - }, - minSize: 0, - cacheGroups: { - vendors: { - test: /[\\/]node_modules[\\/]/, - priority: -10, - name: "vendors", - }, - commons: { - name: 'commons', - priority: -20, - minChunks: 2, - reuseExistingChunk: true - } - } - }, - }, output: { path: path.resolve(__dirname, projectConfig.buildPath), filename: '[name].js', @@ -213,11 +192,38 @@ function setCopyPluginConfig(config) { config.plugins.push(new CopyPlugin({ patterns: copyPluginPattrens })); } +function setOptimizationConfig(config) { + if (process.env.compileMode !== 'moduleJson') { + config.optimization = { + splitChunks: { + chunks(chunk) { + return !/^\.\/workers\//.test(chunk.name); + }, + minSize: 0, + cacheGroups: { + vendors: { + test: /[\\/]node_modules[\\/]/, + priority: -10, + name: "vendors", + }, + commons: { + name: 'commons', + priority: -20, + minChunks: 2, + reuseExistingChunk: true + } + } + } + } + } +} + module.exports = (env, argv) => { const config = {}; setProjectConfig(env); loadEntryObj(projectConfig); initConfig(config); + setOptimizationConfig(config); setCopyPluginConfig(config); if (env.isPreview !== "true") {