我在与通常使用的计算机不同的计算机上运行节点应用程序时遇到问题。经过大量的故障排除:
我收到的错误消息是:
Error: ENOENT: no such file or directory, scandir '.../node_modules/node-sass/vendor'
我正在阅读的帖子建议我运行sudo npm install -g node-sass
,这会给我以下错误:
Error: EACCES: permission denied, mkdir '...nvm/versions/node/v8.9.0/lib/node_modules/node-sass/build'
然后我尝试运行sudo npm rebuild node-sass
,但收到相同的错误消息:
Error: EACCES: permission denied, mkdir '.../node_modules/node-sass/build'
然后我运行了sudo npm install -g node-sass --unsafe-perm=true --allow-root
,但它也没有起作用:
ENOENT: no such file or directory, scandir '/Users/j/Desktop/BikeLord/webserverbikelord/node_modules/node-sass/vendor'
我在这里做错了什么?为什么node-sass不起作用?为什么sudo无法正常工作?
答案 0 :(得分:1)
Windows。请尝试以下
node node_modules/node-sass/scripts/install.js
npm rebuild node-sass
答案 1 :(得分:0)
您的用户无权在您尝试的文件夹中写入。您正在使用3 ...
,因此它转到您拥有的第二个文件夹/Users
...nvm/versions/node/v8.9.0/lib/node_modules
答案 2 :(得分:0)
很可能不是node-sass
问题。当您使用其他操作系统安装node-sass时,有时会发生这种情况。由于它使用某些本机组件,因此npm安装只能在一个操作系统上完成。不要从其他地方复制node_modules。重新安装。
您是否尝试过删除node_modules目录并再次运行npm install
?
您是否正在使用ubuntu shell(在Windows内)完成npm安装的Windows machione上工作,现在您正尝试从Windows命令行重新安装?如果是这样,请不要。仅使用一个外壳。
最后,如果这些帮助都没有,则可能是用户权限问题。检查您是否可以获得超级用户访问权限sudo su -
,然后尝试重新安装npm。