每次都必须运行sudo npm install -g

我开始在一个命令行应用程序与节点,我已经注意到,每次我对我的index.js文件进行更改,我必须运行“sudo npm install -g”来重新更改。 例如

index.js

#!/usr/bin/env node console.log("Hello"); 

在我的package.json下

 "bin": { "movie": "index.js" }, 

如果我从terminal运行“电影”它打印出“你好”。

现在,如果我要改变index.js下的打印语句来表示console.log(“World”),并且我从terminal运行“movie”,它会打印出“Hello”而不是“World”。 但是,如果我做“sudo npm安装-g”,然后运行“电影”命令,它拿起“世界”。

我不知道为什么会发生这种情况?

使用npm link而不是npm install 。 这将在可用于testing的目录上创build一个符号链接,就好像它在本地安装在该目录中一样。