2016-03-03 282 views
0

npm在本地安装后是否可以编辑npm软件包?我在本地安装了npm install-ed material-ui,但我想对一行进行一些修改,看看它是如何工作的,但这些修改并未反映在UI/Chrome React扩展中。 我已尝试重新启动节点服务器并重新启动浏览器。我甚至尝试'npm编辑'。编辑完成后是否需要重新编译软件包?不知道我错过了什么。如何编辑npm本地安装的material-ui软件包npm

+0

在应用程序的'node_modules'内编辑文件会起到一定作用。如果它不是console.logging,那意味着该功能没有被击中。如果您在编辑它们后编辑'npm install',则更改将消失。 – cdbajorin

回答

0

正如cdbajorin指出的那样,您在node_modules中所做的任何编辑都会显示出来。但是,请记住,程序包A可能取决于程序包B的v1.0,但是您自己的项目可能直接依赖于程序包B.为了保留对不同版本的依赖的能力,程序包A依赖的程序包B将具有它是自己的node_modules,所以有时可能很难找出编辑的位置。

这就是说,我只会建议你这样做的调试(这听起来可能是你唯一的需要)。如果你想做一个永久性的改变,更好的方法就是分叉原始包装并编辑你的叉子。在GitHub上分叉真的很容易,我看到的99%的npm包都在GitHub上。然后你可以在package.json中直接引用你的fork。所以,如果你要运行这个命令:

npm install --save git+https://[email protected]/visionmedia/express.git 

你会在你的package.json得到这样的:

"dependencies": { 
    "express": "git://github.com/visionmedia/express.git", 
    ... 
} 

或者,你可以把你的叉子在不同的包名NPM。

最好的办法是向原始包提交一个拉取请求,以便进行任何永久升级。