2016-03-03 179 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。

最好的辦法是向原始包提交一個拉取請求,以便進行任何永久升級。