我必须在messageView中获取users_url。你能救我吗?
init.js
(function(global) {
"use strict;"
// Class ------------------------------------------------
function Config() {
var users_url = "some_url";
};
Config.defaultContainer = "body";
// Exports ----------------------------------------------
module["exports"] = Config;
})((this || 0).self || global);
这是我的messageView.js,我想从init.js获取users_url。
var init = require('../../../init.js');
var MessagingView = Backbone.View.extend({
el : null,
initialize: function(options) {
this.el = options.el;
this.render();
},
render: function() {
$(this.el).html(template());
this.onLoad();
return this;
},
onLoad: function(){
consle.log("Here i want my users_url");
});
}
});
module.exports = MessagingView;
我已经尝试了一切,我可以得到它。
由于
答案 0 :(得分:0)
目前,users_url
是Config
(或init
)函数中的变量。由于JavaScript具有函数作用域,因此无法从函数外部到达函数内部创建的变量。
您可以使users_url
属性Config
成为defaultContainer
功能的属性,就像您使用messageView.js
一样。然后在init.users_url
中,您会Config
。
您可以使users_url
函数返回function Config () {
// ...
return {
users_url: users_user
};
}
,或将其作为属性的对象:
messageView.js
然后,在init().users_url
// or
var obj = init();
obj.users_url
中,您可以执行以下操作:
{{1}}