Javascript Node.js-将上下文传递到函数属性中的嵌套对象
我需要在Node.js中创建一个名称间隔清晰的模块,通过Javascript Node.js-将上下文传递到函数属性中的嵌套对象,javascript,node.js,Javascript,Node.js,我需要在Node.js中创建一个名称间隔清晰的模块,通过require()将其分解为子模块,并将根上下文/范围一直传递给名称空间中的方法 // index.js var SDK = function(data){ this.data = data; }; SDK.prototype.Utilities = require('./utilities'); module.exports = function(data) { return new SDK(
require()
将其分解为子模块,并将根上下文/范围一直传递给名称空间中的方法
// index.js
var SDK = function(data){
this.data = data;
};
SDK.prototype.Utilities = require('./utilities');
module.exports = function(data) {
return new SDK(data);
};
// utilities.js
module.exports = {
callAPI: function() {
console.log(this.data);
}
};
// Use-case (somewhere in the node.js app...)
var SDK = require('./index')("this is some data");
SDK.Utilities.callAPI();
// Should return "this is some data"
例如:
SDK
中的需要在SDK.Utilities.callAPI()中访问该代码>,如下所示<代码>实用程序
是我指的名称空间
我知道javascriptbind()
和call()
技术,但我不确定在这种特殊情况下如何使用它们。您应该使用apply或call
它们在给定的范围内运行函数。OK-最后一件事,您能否添加一个示例,说明您希望如何使用它?伪代码很好。我刚刚将用例添加到代码的底部。我知道这一点。但我不知道如何通过require()
将模块划分为子模块。你能不能提供一个书面的例子,说明在我的具体案例中这是如何运作的?