簡體   English   中英

錯誤:找不到模塊“vue-loader-v16/package.json”

[英]Error: Cannot find module 'vue-loader-v16/package.json'

我是 vue.js 的新手,剛剛來自 react.js。 我在使用 vue 加載器時遇到的問題一開始並沒有發生。 但從第二次應用程序因啟動服務器而崩潰。

 npm run serve

> todo@0.1.0 serve /home/riyad/Desktop/todo_wedevs/todo
> vue-cli-service serve

 INFO  Starting development server...
 ERROR  Error: Cannot find module 'vue-loader-v16/package.json'
Error: Cannot find module 'vue-loader-v16/package.json'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:613:15)
    at Function.Module._load (internal/modules/cjs/loader.js:539:25)
    at Module.require (internal/modules/cjs/loader.js:667:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at api.chainWebpack.webpackConfig (/home/riyad/Desktop/todo_wedevs/todo/node_modules/@vue/cli-service/lib/config/base.js:114:23)
    at webpackChainFns.forEach.fn (/home/riyad/Desktop/todo_wedevs/todo/node_modules/@vue/cli-service/lib/Service.js:236:40)
    at Array.forEach (<anonymous>)
    at Service.resolveChainableWebpackConfig (/home/riyad/Desktop/todo_wedevs/todo/node_modules/@vue/cli-service/lib/Service.js:236:26)
    at Service.resolveWebpackConfig (/home/riyad/Desktop/todo_wedevs/todo/node_modules/@vue/cli-service/lib/Service.js:240:48)
    at PluginAPI.resolveWebpackConfig (/home/riyad/Desktop/todo_wedevs/todo/node_modules/@vue/cli-service/lib/PluginAPI.js:132:25)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! todo@0.1.0 serve: `vue-cli-service serve`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the todo@0.1.0 serve script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/riyad/.npm/_logs/2020-08-20T11_40_44_196Z-debug.log

我已經嘗試過 vue cli 3 和 2.. 並安裝了不同的 vue-loader.. 但結果與我的 babble.config.js 文件相同->

const { VueLoaderPlugin } = require("vue-loader");
module.exports = {
  presets: ["@vue/cli-plugin-babel/preset"],
  plugins: [new VueLoaderPlugin()],
};

package.json

{
  "name": "todo",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },
  "dependencies": {
    "core-js": "^3.6.5",
    "uuid": "^8.3.0",
    "vue": "^3.0.0-0",
    "vuex": "^4.0.0-0"
  },
  "devDependencies": {
    "@vue/cli-plugin-babel": "~4.5.0",
    "@vue/cli-plugin-eslint": "~4.5.0",
    "@vue/cli-plugin-vuex": "~4.5.0",
    "@vue/cli-service": "~4.5.0",
    "@vue/compiler-sfc": "^3.0.0-0",
    "babel-eslint": "^10.1.0",
    "eslint": "^6.7.2",
    "eslint-plugin-vue": "^7.0.0-0",
    "vue-loader": "^16.0.0-beta.3",
    "vue-template-compiler": "^2.6.11"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/vue3-essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "babel-eslint"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not dead"
  ]
}

日志->

0 info it worked if it ends with ok
1 verbose cli [ '/home/riyad/.nvm/versions/node/v11.10.1/bin/node',
1 verbose cli   '/home/riyad/.nvm/versions/node/v11.10.1/bin/npm',
1 verbose cli   'run',
1 verbose cli   'serve' ]
2 info using npm@6.7.0
3 info using node@v11.10.1
4 verbose run-script [ 'preserve', 'serve', 'postserve' ]
5 info lifecycle todo@0.1.0~preserve: todo@0.1.0
6 info lifecycle todo@0.1.0~serve: todo@0.1.0
7 verbose lifecycle todo@0.1.0~serve: unsafe-perm in lifecycle true
8 verbose lifecycle todo@0.1.0~serve: PATH: /home/riyad/.nvm/versions/node/v11.10.1/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/riyad/Desktop/todo_wedevs/todo/node_modules/.bin:/home/riyad/.nvm/versions/node/v11.10.1/bin:/home/riyad/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/var/lib/snapd/snap/bin:/home/riyad/.yarn/bin
9 verbose lifecycle todo@0.1.0~serve: CWD: /home/riyad/Desktop/todo_wedevs/todo
10 silly lifecycle todo@0.1.0~serve: Args: [ '-c', 'vue-cli-service serve' ]
11 silly lifecycle todo@0.1.0~serve: Returned: code: 1  signal: null
12 info lifecycle todo@0.1.0~serve: Failed to exec serve script
13 verbose stack Error: todo@0.1.0 serve: `vue-cli-service serve`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/home/riyad/.nvm/versions/node/v11.10.1/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
13 verbose stack     at EventEmitter.emit (events.js:197:13)
13 verbose stack     at ChildProcess.<anonymous> (/home/riyad/.nvm/versions/node/v11.10.1/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:197:13)
13 verbose stack     at maybeClose (internal/child_process.js:984:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:265:5)
14 verbose pkgid todo@0.1.0
15 verbose cwd /home/riyad/Desktop/todo_wedevs/todo
16 verbose Linux 5.6.19-2-MANJARO
17 verbose argv "/home/riyad/.nvm/versions/node/v11.10.1/bin/node" "/home/riyad/.nvm/versions/node/v11.10.1/bin/npm" "run" "serve"
18 verbose node v11.10.1
19 verbose npm  v6.7.0
20 error code ELIFECYCLE
21 error errno 1
22 error todo@0.1.0 serve: `vue-cli-service serve`
22 error Exit status 1
23 error Failed at the todo@0.1.0 serve script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

還建議我如何使用 vuex 和 vue-router 安全地設置項目

嘗試將 pacakge 安裝到 devDependencies:

npm i --save-dev vue-loader-v16

它幫助了我。

使用babble.config.js是指babel.config.js嗎,呵呵? 無論如何,我認為你的babel.config.js應該是這樣的:

module.exports = {
    presets: ["@vue/cli-plugin-babel/preset"],
};

And for keeping your package.json more clean, you could make an .eslintrc.js file instead - just copy/paste the data from your eslintConfig key in package.json

將 npm 更新到高於 6.9 的版本並執行npm i ,這應該安裝缺少的包https://github.com/vuejs/vue-cli/57/18

npm install npm@latest -g (更新 npm)

我解決了它重新安裝 package。 首先你需要卸載它

npm uninstall vue-loader-v16

卸載完成后重新安裝

npm i vue-loader-v16

這似乎很明顯,但它對我有用兩次

對於其他人,如果其他答案不起作用,我發現我的 npm 版本需要更新。

您需要從項目中刪除 node-modules 文件夾。 然后使用命令再次安裝 npm

npm i -g npm

然后您需要將您的應用程序作為

npm 運行服務

這可能對您有幫助。

當您使用較低版本(<6.9)npm時會發生這種情況,那么,您使用的是較低版本的nodejs嗎?

  1. 檢查您的節點版本(表示您的 npm 版本)

node -v

  1. 安裝更新的節點版本

nvm install 14.xx

  1. nvm 使用 14.xx

npm -v => 6.14.x

實際上將 vue/cli 從 4.5.6 降級到 3.0.1 有效..它將 vue cli 從 3 降級到 2...實際上 vue cli 3 是 beta 版本....現在不應該使用 3...我用來降級的命令您只需要要安裝的特定版本..在我的情況下->

npm install -g @vue/cli@3.0.1

編輯 App.js >> Go 到文件路徑:src/component/App.vue

導入此代碼

// code returned from the main loader for 'source.vue'

// import the <template> block
import render from 'source.vue?vue&type=template'
// import the <script> block
import script from 'source.vue?vue&type=script'
export * from 'source.vue?vue&type=script'
// import <style> blocks
import 'source.vue?vue&type=style&index=1'

script.render = render
export default script

並在運行后

npm run serve

我希望解決這個錯誤“找不到模塊'vue-loader-v16/package.json'”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM