Ich habe meinen Code über Webpack (^5.51.1) und Vue-Loader (^17.0.0) kompiliert und versucht, ein altes Projekt zu starten, aber es gab diesen Fehler:
[webpack-cli] Failed to load '/var/www/webpack.config.js' config [webpack-cli] Error: Cannot find module 'vue/compiler-sfc' Require stack: - /var/www/node_modules/vue-loader/dist/resolveScript.js - /var/www/node_modules/vue-loader/dist/select.js - /var/www/node_modules/vue-loader/dist/index.js - /var/www/webpack.config.js - /var/www/node_modules/webpack-cli/lib/webpack-cli.js - /var/www/node_modules/webpack-cli/lib/bootstrap.js - /var/www/node_modules/webpack-cli/bin/cli.js - /var/www/node_modules/webpack/bin/webpack.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:999:19) at require (/var/www/node_modules/v8-compile-cache/v8-compile-cache.js:159:20) at Object.<anonymous> (/var/www/node_modules/vue-loader/dist/resolveScript.js:5:24) at Module._compile (/var/www/node_modules/v8-compile-cache/v8-compile-cache.js:192:30) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1151:10) at Module.load (node:internal/modules/cjs/loader:975:32) at Function.Module._load (node:internal/modules/cjs/loader:822:12) at Module.require (node:internal/modules/cjs/loader:999:19) { code: 'MODULE_NOT_FOUND', requireStack: [ '/var/www/node_modules/vue-loader/dist/resolveScript.js', '/var/www/node_modules/vue-loader/dist/select.js', '/var/www/node_modules/vue-loader/dist/index.js', '/var/www/webpack.config.js', '/var/www/node_modules/webpack-cli/lib/webpack-cli.js', '/var/www/node_modules/webpack-cli/lib/bootstrap.js', '/var/www/node_modules/webpack-cli/bin/cli.js', '/var/www/node_modules/webpack/bin/webpack.js' ] }
Ich weiß wirklich nicht, was passiert ist. Ich habe versucht, @vue/compiler-sfc
zu meiner package.json hinzuzufügen, aber es funktioniert nicht. Ich möchte wirklich nicht zu Vue3 wechseln, weil das viele Dinge kaputt machen würde.
Bearbeiten: Siehe package.json:pastebin
似乎 vue-loader > 15 中有一些重大变化。它告诉我曾经强制 npm 保留在版本 15 上。在其他地方没有找到...