Cannot find module @rollup/rollup-win32-x64-msvc

根据runoob课程 和 vuejs课程学习vue时,执行npm run dev总是报错,错误信息为:
Cannot find module @rollup/rollup-win32-x64-msvc


找了很多教程,有推荐删除node_modules和packagelock.json重新执行npm install的,
试了一圈都不行,在stackoverflow找到一个回答,通过了,这里记录一下问题

环境:
OS: WIN 7
node:  v18.20.4
npm: 10.7.0 

执行 npm init vue
提示安装create-vue ,安装完成之后,执行 npm run format , npm run dev,
此时查看了一下npm ls -l ,注意到vite版本:
vite@5.3.5

在执行npm run dev时报错了: 
> vue-init-prj@0.0.0 dev
> vite

E:\data\vue-prj\vue-init-prj\node_modules\rollup\dist\native.js:59
                throw new Error(
                      ^

Error: Cannot find module @rollup/rollup-win32-x64-msvc. npm has a bug related t
o optional dependencies (https://github.com/npm/cli/issues/4828). Please try `np
m i` again after removing both package-lock.json and node_modules directory.


还贴心的给出了解决方法:删掉node_modules和package-lock.json然后执行npm i,但没有起到作用,按照stackoverflow的方式,将vite版本降到4.4.0,npm install vite@4.4.0

接着重新执行npm run dev

> vue-init-prj@0.0.0 dev
> vite

Port 5173 is in use, trying another one...

  VITE v4.4.0  ready in 3539 ms

  ➜  Local:   http://localhost:5174/
  ➜  Network: use --host to expose
  ➜  Vue DevTools: Open http://localhost:5174/__devtools__/ as a separate window

  ➜  Vue DevTools: Press Alt(⌥)+Shift(⇧)+D in App to toggle the Vue DevTools

  ➜  press h to show help

终于起来了。


以下是在webstorm里创建的project,也存在类似问题,将vite降级之后,可以正常起来了。

myvue@0.0.0
| E:\data\ws\myvue
|
+-- @vitejs/plugin-vue@5.1.1
|
+-- vite@4.4.0
|   Native-ESM powered web dev build tool
`-- vue@3.4.34
    The progressive JavaScript framework for building modern web UI.