2015-05-11 51 views
0

在節點js中,我們導入require('library')以使用外部庫。假設我們想爲我們的項目定製一個'庫'內的external-file.js。什麼是可以使用的技術? 在Java中,只需複製外部文件並確保它遵循相同的包路徑,就可以不加思索地完成此操作。這怎麼能在node.js中完成?只修改庫中的一個文件

+0

我認爲你可以在執行 –

+0

之前覆蓋它(假定它是對象)嗎?可以提供示例嗎? – cometta

回答

1

理想情況下,如果這個外部庫從npm或github被拉下來,你應該創建一個fork,在你的項目的package.json中使用它並修改你自己的fork中的文件。然後,當您將更改提交到文件時,它將進入您自己的第三方庫版本。 (如果變化足夠好,你甚至可以要求作者將其納入他們的代碼中,並因貢獻開源而得到功勞:D)

這樣做的額外好處是你不必與您的源代碼一起提交依賴關係。

+0

讓我們說只有一個小的變化,特別是沒有優勢給其他用戶。如何繼續使用外部庫,只需要在本地更改一個文件?可以提供示例嗎? – cometta

+0

再一次,更好地創建一個fork並在package.json中使用它。對第三方庫的更改不是您的代碼的一部分,因此無論如何它都不應該檢入您的代碼。 在這個意義上,Javascript與Java不同,擴展類並修改所需內容並不容易。爲保持乾淨,請按照建議的方法保持分離。 – nishantkyal