我正在为爆米花机使用mozila MakeAPI。它将数据保存到elasticsearch。我在弹性搜索中添加并保存了新列。现在进行检索,我无法获取该列值。因此,我更新了一个节点模块Makeapi_client。

我的问题是,这种方法好吗?因为用户更新npm可能会这样。在这种情况下,我编写的代码将如何处理。

最佳答案

不建议以这种方式“修补”库。下次更新MakeAPI时,您的更改将被覆盖。您有几种选择:


Submit a Pull Request-克隆原始存储库,进行更改,然后创建请求请求。拉取请求是您向原始库作者提出的将您的更改合并到其规范库中的请求。本质上,您将为每个人修复库!
将补丁制作在另一个文件中-没有什么可以阻止您执行以下操作:

var Client = require('makeapi').Makeapi_client;
Client.prototype.someNewMethod = function() {};


或类似的东西。本质上,在另一个文件中创建一个补丁,您可以将其检入版本控制,而不会被更改覆盖。

请注意,对库的更新可能仍会中断您的更改。

关于node.js - Node 模块更新安装,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31400634/

10-14 17:49
查看更多