From a36b9124b559d65a724da74f2611a15d3122626f Mon Sep 17 00:00:00 2001 From: Peach Date: Tue, 1 May 2018 23:10:45 +0800 Subject: [PATCH] Fix reference pass error in package config (#1149) --- src/assets/LESSAsset.js | 8 ++++---- src/assets/SASSAsset.js | 8 ++++---- src/transforms/postcss.js | 2 +- src/transforms/posthtml.js | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/assets/LESSAsset.js b/src/assets/LESSAsset.js index 0857e3e55fa..7fc0a2a0a6c 100644 --- a/src/assets/LESSAsset.js +++ b/src/assets/LESSAsset.js @@ -13,10 +13,10 @@ class LESSAsset extends Asset { let less = await localRequire('less', this.name); let render = promisify(less.render.bind(less)); - let opts = - this.package.less || - (await this.getConfig(['.lessrc', '.lessrc.js'])) || - {}; + let opts = Object.assign( + {}, + this.package.less || (await this.getConfig(['.lessrc', '.lessrc.js'])) + ); opts.filename = this.name; opts.plugins = (opts.plugins || []).concat(urlPlugin(this)); diff --git a/src/assets/SASSAsset.js b/src/assets/SASSAsset.js index 3bc2d0bf1d7..afaee8a5627 100644 --- a/src/assets/SASSAsset.js +++ b/src/assets/SASSAsset.js @@ -21,10 +21,10 @@ class SASSAsset extends Asset { rootDir: this.options.rootDir }); - let opts = - this.package.sass || - (await this.getConfig(['.sassrc', '.sassrc.js'])) || - {}; + let opts = Object.assign( + {}, + this.package.sass || (await this.getConfig(['.sassrc', '.sassrc.js'])) + ); opts.includePaths = (opts.includePaths || []).concat( path.dirname(this.name) ); diff --git a/src/transforms/postcss.js b/src/transforms/postcss.js index 6e861503b29..03cbb37d34b 100644 --- a/src/transforms/postcss.js +++ b/src/transforms/postcss.js @@ -31,7 +31,7 @@ async function getConfig(asset) { return; } - config = config || {}; + config = Object.assign({}, config); let postcssModulesConfig = { getJSON: (filename, json) => (asset.cssModules = json) diff --git a/src/transforms/posthtml.js b/src/transforms/posthtml.js index 5dca2d57f15..f1d2ef97ed8 100644 --- a/src/transforms/posthtml.js +++ b/src/transforms/posthtml.js @@ -26,7 +26,7 @@ async function getConfig(asset) { return; } - config = config || {}; + config = Object.assign({}, config); config.plugins = await loadPlugins(config.plugins, asset.name); config.skipParse = true; return config;