Home  >  Q&A  >  body text

Vue2 template compiler broken?

I compile my code via webpack(^5.51.1) and vue-loader(^17.0.0) and I try to start an old project but it gives me this error:

[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'
  ]
}

I really don't know what happened. I tried adding @vue/compiler-sfc to my package.json but it doesn't work. I really don't want to switch to Vue3 because that will break a lot of things.

Edit: See package.json:pastebin

P粉731977554P粉731977554236 days ago378

reply all(1)I'll reply

  • P粉486743671

    P粉4867436712024-02-27 00:23:16

    It seems there are some breaking changes in vue-loader > 15. It tells me to force npm to stay on version 15. Not found elsewhere...

    reply
    0
  • Cancelreply