From 47a28e0e245894db91457ad52b1fce7dcc798a3f Mon Sep 17 00:00:00 2001 From: Haoqun Jiang Date: Sat, 29 Sep 2018 01:44:37 +0800 Subject: [PATCH] fix: plugin sub `node_module` directory should have higher priority in `resolveLoader.modules` in case of interference of unwanted top level dependency hoisting --- packages/@vue/cli-plugin-babel/index.js | 2 +- packages/@vue/cli-plugin-eslint/index.js | 2 +- packages/@vue/cli-plugin-typescript/index.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/@vue/cli-plugin-babel/index.js b/packages/@vue/cli-plugin-babel/index.js index d74518941..cee772ff2 100644 --- a/packages/@vue/cli-plugin-babel/index.js +++ b/packages/@vue/cli-plugin-babel/index.js @@ -5,7 +5,7 @@ module.exports = (api, options) => { const cliServicePath = require('path').dirname(require.resolve('@vue/cli-service')) api.chainWebpack(webpackConfig => { - webpackConfig.resolveLoader.modules.add(path.join(__dirname, 'node_modules')) + webpackConfig.resolveLoader.modules.prepend(path.join(__dirname, 'node_modules')) const jsRule = webpackConfig.module .rule('js') diff --git a/packages/@vue/cli-plugin-eslint/index.js b/packages/@vue/cli-plugin-eslint/index.js index 9abc56447..5582be051 100644 --- a/packages/@vue/cli-plugin-eslint/index.js +++ b/packages/@vue/cli-plugin-eslint/index.js @@ -24,7 +24,7 @@ module.exports = (api, options) => { ) api.chainWebpack(webpackConfig => { - webpackConfig.resolveLoader.modules.add(path.join(__dirname, 'node_modules')) + webpackConfig.resolveLoader.modules.prepend(path.join(__dirname, 'node_modules')) webpackConfig.module .rule('eslint') diff --git a/packages/@vue/cli-plugin-typescript/index.js b/packages/@vue/cli-plugin-typescript/index.js index 2ce761479..68236607b 100644 --- a/packages/@vue/cli-plugin-typescript/index.js +++ b/packages/@vue/cli-plugin-typescript/index.js @@ -5,7 +5,7 @@ module.exports = (api, options) => { const useThreads = process.env.NODE_ENV === 'production' && options.parallel api.chainWebpack(config => { - config.resolveLoader.modules.add(path.join(__dirname, 'node_modules')) + config.resolveLoader.modules.prepend(path.join(__dirname, 'node_modules')) if (!options.pages) { config.entry('app')