我想为我的项目要求添加几个异步包的方法..我不想更改aync的js文件.如何扩展Node模块以添加更多功能?
当我需要('myasync')时,我想要'async'模块的所有功能以及我添加的功能.
Bre*_*dan 12
完成此操作的步骤如下:
require(作为NPM模块或文件模块).首先,我们需要异步.
var newModule = require('async');
Run Code Online (Sandbox Code Playgroud)
现在我们已经检索了模块async,我们可以附加我们自己的函数.
newModule.betterParallel = function(myParameters) { ... };
Run Code Online (Sandbox Code Playgroud)
我们不仅可以添加自己的功能,而且甚至可以从模块中删除 - 因为它现在是我们自己的.
delete newModule['series'];
Run Code Online (Sandbox Code Playgroud)
完成后,我们需要重新导出新模块.
module.exports = newModule;
Run Code Online (Sandbox Code Playgroud)
如果要将此作为自己的模块发布到NPM,则可以使用npm publish.如果您不想,您可以简单地使用require此文件 - 现在它包含您修改后的更改.
// module that you like to extend
var async = require('async')
// add a new function, myOwnFunction, to the module
async.myOwnFunction = function () {
// do something
}
// re-export the module, for the changes to take effect
module.exports = async
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7194 次 |
| 最近记录: |