My computer is a Surface based on Windows ARM architecture, and I also encountered the same problem. I have tried to delete `package-lock.json` and `node_modules`, and then re-executed the `npm install` command, but the result has not changed. The following are my relevant error reports:
 
PS C:\Users\Yunyize\Documents\Projects\vite-project> npm i
added 110 packages, and audited 111 packages in 1m
16 packages are looking for funding
  run `npm fund` for details
found 0 vulnerabilities
PS C:\Users\Yunyize\Documents\Projects\vite-project> npm run dev
> vite-project@0.0.0 dev
> vite
C:\Users\Yunyize\Documents\Projects\vite-project\node_modules\rollup\dist\native.js:59
                throw new Error(
                      ^
Error: Cannot find module @rollup/rollup-win32-arm64-msvc. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try `npm i` again after removing both package-lock.json and node_modules directory.
    at requireWithFriendlyError (C:\Users\Yunyize\Documents\Projects\vite-project\node_modules\rollup\dist\native.js:59:9)
    at Object.<anonymous> (C:\Users\Yunyize\Documents\Projects\vite-project\node_modules\rollup\dist\native.js:68:76)
    ... 2 lines matching cause stack trace ...
    at Module.load (node:internal/modules/cjs/loader:1208:32)
    at Module._load (node:internal/modules/cjs/loader:1024:12)
    at cjsLoader (node:internal/modules/esm/translators:348:17)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:297:7)
    at ModuleJob.run (node:internal/modules/esm/module_job:222:25)
    at async ModuleLoader.import (node:internal/modules/esm/loader:316:24) {
  [cause]: Error: \\?\C:\Users\Yunyize\Documents\Projects\vite-project\node_modules\@rollup\rollup-win32-arm64-msvc\rollup.win32-arm64-msvc.node is not a valid Win32 application.
  \\?\C:\Users\Yunyize\Documents\Projects\vite-project\node_modules\@rollup\rollup-win32-arm64-msvc\rollup.win32-arm64-msvc.node
      at Module._extensions..node (node:internal/modules/cjs/loader:1454:18)
      at Module.load (node:internal/modules/cjs/loader:1208:32)
      at Module._load (node:internal/modules/cjs/loader:1024:12)
      at Module.require (node:internal/modules/cjs/loader:1233:19)
      at require (node:internal/modules/helpers:179:18)
      at requireWithFriendlyError (C:\Users\Yunyize\Documents\Projects\vite-project\node_modules\rollup\dist\native.js:41:10)
      at Object.<anonymous> (C:\Users\Yunyize\Documents\Projects\vite-project\node_modules\rollup\dist\native.js:68:76)
      at Module._compile (node:internal/modules/cjs/loader:1358:14)
      at Module._extensions..js (node:internal/modules/cjs/loader:1416:10)
      at Module.load (node:internal/modules/cjs/loader:1208:32) {
    code: 'ERR_DLOPEN_FAILED'
  }
}
Node.js v20.13.1
PS C:\Users\Yunyize\Documents\Projects\vite-project> 
 
Originally posted by @yunyizea in #4828 (comment)