Skip to content

Commit 8f0b52f

Browse files
committed
fix: resolve for global service
1 parent 1cb9fdf commit 8f0b52f

File tree

5 files changed

+19
-15
lines changed

5 files changed

+19
-15
lines changed

packages/@vue/cli-plugin-eslint/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ module.exports = (api, { lintOnSave }) => {
1111
.end()
1212
.test(/\.(vue|jsx?)$/)
1313
.use('eslint-loader')
14-
.loader('eslint-loader')
14+
.loader(require.resolve('eslint-loader'))
1515
.options(Object.assign(options, {
1616
formatter: require('eslint/lib/formatters/codeframe')
1717
}))

packages/@vue/cli-plugin-typescript/index.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ module.exports = (api, options) => {
2424
// this is pending on the readiness of @babel/preset-typescript.
2525
tsRule
2626
.use('cache-loader')
27-
.loader('cache-loader')
27+
.loader(require.resolve('cache-loader'))
2828
.options({ cacheDirectory })
2929
.end()
3030
.use('babel-loader')
31-
.loader('babel-loader')
31+
.loader(require.resolve('babel-loader'))
3232

3333
config.module
3434
.rule('vue')
@@ -41,19 +41,19 @@ module.exports = (api, options) => {
4141
if (api.hasPlugin('babel')) {
4242
tsRule
4343
.use('cache-loader')
44-
.loader('cache-loader')
44+
.loader(require.resolve('cache-loader'))
4545
.options({ cacheDirectory })
4646
.end()
4747
.use('babel-loader')
48-
.loader('babel-loader')
48+
.loader(require.resolve('babel-loader'))
4949
}
5050
tsRule
5151
.use('cache-loader-2')
52-
.loader('cache-loader')
52+
.loader(require.resolve('cache-loader'))
5353
.options({ cacheDirectory })
5454
.end()
5555
.use('ts-loader')
56-
.loader('ts-loader')
56+
.loader(require.resolve('ts-loader'))
5757
.options({
5858
transpileOnly: true,
5959
appendTsSuffixTo: [/\.vue$/]

packages/@vue/cli-service-global/lib/createConfigPlugin.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,14 @@ module.exports = function createConfigPlugin (context, entry) {
1919
}
2020
}
2121

22-
// include resolve
22+
// include resolve for deps of this module.
23+
// when installed globally, the location may vary depending on
24+
// package managers their folder structures for global install.
25+
// so we first resolve the location of vue and then trace to the
26+
// install location.
2327
config.resolve
2428
.modules
25-
.add(path.resolve(__dirname, '../node_modules'))
29+
.add(path.resolve(require.resolve('vue'), '../../../'))
2630

2731
// set entry
2832
config

packages/@vue/cli-service/lib/config/base.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,14 @@ module.exports = (api, options) => {
4444
.rule('vue')
4545
.test(/\.vue$/)
4646
.use('vue-loader')
47-
.loader('vue-loader')
47+
.loader(require.resolve('vue-loader'))
4848
.options(Object.assign({}, options.vueLoader))
4949

5050
webpackConfig.module
5151
.rule('images')
5252
.test(/\.(png|jpe?g|gif)(\?.*)?$/)
5353
.use('url-loader')
54-
.loader('url-loader')
54+
.loader(require.resolve('url-loader'))
5555
.options({
5656
limit: 10000,
5757
name: `img/[name].[hash:8].[ext]`
@@ -63,7 +63,7 @@ module.exports = (api, options) => {
6363
.rule('svg')
6464
.test(/\.(svg)(\?.*)?$/)
6565
.use('file-loader')
66-
.loader('file-loader')
66+
.loader(require.resolve('file-loader'))
6767
.options({
6868
name: `img/[name].[hash:8].[ext]`
6969
})
@@ -72,7 +72,7 @@ module.exports = (api, options) => {
7272
.rule('media')
7373
.test(/\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/)
7474
.use('url-loader')
75-
.loader('url-loader')
75+
.loader(require.resolve('url-loader'))
7676
.options({
7777
limit: 10000,
7878
name: `media/[name].[hash:8].[ext]`
@@ -82,7 +82,7 @@ module.exports = (api, options) => {
8282
.rule('fonts')
8383
.test(/\.(woff2?|eot|ttf|otf)(\?.*)?$/)
8484
.use('url-loader')
85-
.loader('url-loader')
85+
.loader(require.resolve('url-loader'))
8686
.options({
8787
limit: 10000,
8888
name: `fonts/[name].[hash:8].[ext]`

packages/@vue/cli-service/lib/config/prod.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ module.exports = (api, options) => {
194194
// .rule('vue')
195195
// .use('thread-loader')
196196
// .before('vue-loader')
197-
// .loader('thread-loader')
197+
// .loader(require.resolve('thread-loader'))
198198
// .options({ name: 'vue' })
199199
}
200200
})

0 commit comments

Comments
 (0)