NPM项目运行出现Error: ENOENT: no such file or directory, scandir 安装node-sass报错


  最近在使用npm运行公司的一个vue前端项目时,出现了Error: ENOENT: no such file or directory, scandir 的错误,百度了一下是npm相关依赖因为网络环境问题下载失败,需要科学上网的环境下重新安装。解决方法如下:
  执行以下命令
  npm rebuild node-sass
  可是有时就是网络问题导致上面命令安装失败,查下失败提示,有可能是

Cannot download “https://github.com/sass/node-sass/releases/download/v4.5.3/win32-x64-48_binding.node“:

  然后下面就是nodejs给你的暗示

========暗示=========

Hint: If github.com is not accessible in your location
try setting a proxy via HTTP_PROXY, e.g.

  export HTTP_PROXY=http://example.com:1234

or configure npm proxy via

  npm config set proxy http://example.com:8080

node-sass@4.5.3 postinstall K:\mypro\nodePro\node_modules_node-sass@4.5.3@node-sass

========暗示=========

  意思是就说下载这个链接失败,你可以直接在浏览器打开这个链接(应该也打不开,或者特别慢),到这里我只能说你要翻墙了,上面也暗示你翻墙了.

  翻墙后再试试几次npm rebuild node-sass,

  还是不行也要想办法把win32-x64-48_binding.node 文件下载下来(在公司或者家里换不同的网络试试),

win32-x64-48_binding.node 到手后,打开项目下面的路径 node_modules_node-sass_node-sass@4.5.3@node-sass\vendor (上面暗示的最后一句就有,版本号可能不一样)

  然后在vendor文件夹下面创建win32-x64-48(要对应版本)文件夹,win32-x64-48文件夹下面放binding.node(文件名去掉前面的win32-x64-48_)

  然后再一次命令: npm rebuild node-sass

  应该安装成功

  可能出错问题:

Testing binary

Binary has a problem: Error: %1 is not a valid Win32 application.

  解决方法就是打开项目下面路径 node_modules_node-sass_node-sass@4.5.3@node-sass\vendor\win32-x64-48文件夹,把里面的binding.node文件替换新下载的.

  在国内网络环境下执行npm rebuild node-sass命令后,还是报错。只好打开蓝灯,重新执行命令,这次没有出现上述error。
  执行npm run build,项目可以正常跑起来了。


Logo

前往低代码交流专区

更多推荐