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

Error: Cannot find module @rollup/rollup-win32-x64-msvc. npm has a bug related to optional dependencies (npm/cli#4828). Please try npm i again after removing both package-lock.json and node_modules directory.
at requireWithFriendlyError (E:\vue_project\soybean-admin\node_modules.pnpm\rollup@4.9.6\node_modules\rollup\dist\native.js:87:9)
at Object. (E:\vue_project\soybean-admin\node_modules.pnpm\rollup@4.9.6\node_modules\rollup\dist\native.js:96:48)
... 2 lines matching cause stack trace ...
at require$$0.Module._extensions..js (E:\vue_project\soybean-admin.pnp.cjs:17304:33)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at require$$0.Module._load (E:\vue_project\soybean-admin.pnp.cjs:17152:31)
at ModuleWrap. (node:internal/modules/esm/translators:169:29)
at ModuleJob.run (node:internal/modules/esm/module_job:194:25) {
[cause]: Error: Your application tried to access @rollup/rollup-win32-x64-msvc, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound.

Required package: @rollup/rollup-win32-x64-msvc (via "@rollup\rollup-win32-x64-msvc")
Required by: E:\vue_project\soybean-admin\node_modules.pnpm\rollup@4.9.6\node_modules\rollup\dist\

之前项目安装依赖后,可以正常运行,但是某一天安装依赖后,执行 npm run dev 运行项目时,提示上面的错误,判断原因应该为 npm 缓存问题,可以先清理缓存,然后删除 node_modulespackage-lock.json,再执行 npm i 重新安装依赖。

本人实施成功的解决方法就是:删除 nodejs,然后重新安装。

应该是删除 nodejs 后,其关联的 npm 缓存,也被删除了,然后重新安装之后,就可以正常使用了。

所以,正确解决方法应该是清理 npm 缓存之后,再重新安装依赖

当网络很差时,安装一些库的时候可能会安装失败,如果安装失败,则有必要先清理一下 npm 缓存,然后再重新安装。

# 强制清理缓存
npm cache clean --force
# 查看 npm 缓存保存的路径,如果提示不存在该命令,改用下面一句
npm cache dir
# 查看 npm 的配置信息,其中的 cache 字段就是 npm 缓存保存的目录路径
npm config list --json

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
@rollup/plugin-dynamic-import-vars 是一个 Rollup 插件,用于处理动态导入(Dynamic Import)语法中的变量部分。 在 ES 模块中,我们可以使用动态导入语法来动态加载模块。而 @rollup/plugin-dynamic-import-vars 插件则是为了解决在动态导入语法中使用变量引用的问题。 当我们在动态导入语法中使用变量时,Rollup 默认会将该变量视为一个字符串,而不是实际的变量引用。这样就无法准确地确定被导入模块的路径。例如: ```javascript const modulePath = './path/to/module.js'; import(modulePath).then(module => { // ... }); ``` 在上述代码中,modulePath 是一个变量,它存储了被导入模块的路径。然而,默认情况下,Rollup 会将该变量视为字符串,导致无法正确解析模块路径。 @rollup/plugin-dynamic-import-vars 插件的作用就是在构建过程中解析这些变量引用,并将其正确地转换为模块路径。通过该插件,我们可以顺利地将动态导入的模块正确地导入并使用。 需要注意的是,使用该插件时,我们需要保证变量引用是由静态可确定的值构成,如果变量引用是动态的、不可确定的,则插件无法正确处理。因此,在使用该插件时,我们需要遵循一定的限制,以确保构建过程的准确性和稳定性。 总之,@rollup/plugin-dynamic-import-vars 是一个用于处理动态导入语法中变量引用的 Rollup 插件,可以解决默认情况下变量引用视为字符串的问题,确保动态导入模块的正确构建。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

coderyzj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值