#node.js #npm #vuejs3 #vue-cli
Вопрос:
Версии:
vueJS: 3.x
vue-cli-service: 4.5.13
npm: 7.21.0
node: v16.8.0
Я установил vue-cli-service
глобально. Если я настрою scripts
свойство в своем проекте package.json
так, чтобы оно выглядело следующим образом:
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"test:unit": "vue-cli-service test:unit",
"test:e2e": "vue-cli-service test:e2e",
"lint": "vue-cli-service lint",
"vue-cli-service": "vue-cli-service"
},
затем из корневого каталога проекта я могу успешно запускать команды из своей оболочки терминала, такие как:
$ npm run vue-cli-service --version
7.21.0
Но оставаясь в корне проекта, если я затем выполню эту команду:
$ vue-cli-service --version
Я возвращаю эту ошибку:
node:internal/modules/cjs/loader:936
throw err;
^
Error: Cannot find module '@vue/cli-plugin-babel'
Require stack:
- /usr/local/lib/node_modules/@vue/cli-service/lib/Service.js
- /usr/local/lib/node_modules/@vue/cli-service/bin/vue-cli-service.js
at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
at Function.Module._load (node:internal/modules/cjs/loader:778:27)
at Module.require (node:internal/modules/cjs/loader:1005:19)
at require (node:internal/modules/cjs/helpers:94:18)
at idToPlugin (/usr/local/lib/node_modules/@vue/cli-service/lib/Service.js:145:14)
at /usr/local/lib/node_modules/@vue/cli-service/lib/Service.js:184:20
at Array.map (<anonymous>)
at Service.resolvePlugins (/usr/local/lib/node_modules/@vue/cli-service/lib/Service.js:170:10)
at new Service (/usr/local/lib/node_modules/@vue/cli-service/lib/Service.js:32:25)
at Object.<anonymous> (/usr/local/lib/node_modules/@vue/cli-service/bin/vue-cli-service.js:15:17) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/usr/local/lib/node_modules/@vue/cli-service/lib/Service.js',
'/usr/local/lib/node_modules/@vue/cli-service/bin/vue-cli-service.js'
]
}
Почему?
ПРИМЕЧАНИЕ: мое приложение VueJS работает нормально. Так что делайте юнит-тесты с шуткой. Мне в основном любопытно, почему vue-cli-service
, кажется, теряется контекст при глобальном охвате (несмотря на то, что он находится в хорошо настроенном проекте).
Спасибо.