From 0f4d6497c8e9f1287fac5b6224aff6be112d5e83 Mon Sep 17 00:00:00 2001 From: qiang Date: Mon, 15 Aug 2022 16:47:36 +0800 Subject: [PATCH] fix(mp): clone babelLoader and options for main.js --- packages/webpack-uni-mp-loader/lib/main-new.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/webpack-uni-mp-loader/lib/main-new.js b/packages/webpack-uni-mp-loader/lib/main-new.js index db7088e2d..15b7c48dd 100644 --- a/packages/webpack-uni-mp-loader/lib/main-new.js +++ b/packages/webpack-uni-mp-loader/lib/main-new.js @@ -96,12 +96,21 @@ createPage(Page) components: [] }) - const babelLoader = findBabelLoader(this.loaders) + let babelLoader = findBabelLoader(this.loaders) if (!babelLoader) { throw new Error(uniI18n.__('mpLoader.findFail', { 0: 'babel-loader' })) } else { + const webpack = require('webpack') + if (webpack.version[0] > 4) { + // clone babelLoader and options + const index = this.loaders.indexOf(babelLoader) + const newBabelLoader = Object.assign({}, babelLoader) + Object.assign(newBabelLoader, { options: Object.assign({}, babelLoader.options) }) + this.loaders.splice(index, 1, newBabelLoader) + babelLoader = newBabelLoader + } addCreateApp(babelLoader) } @@ -147,4 +156,4 @@ createPage(Page) callback(err, content, map) }) } -} +} -- GitLab