在我的项目中,我将所有常用方法保存在文件中,并将其命名为SandBox
。我在<head>
。
现在我需要在另一个特定于页面的类中使用这个SandBox
类。类名是Home
类。我正在Home
上面加载此</body>
课程。
我应该如何在SandBox
课程中使用Home
课程?
我在Home
课程中尝试了以下操作,我只能在SandBox
属性中访问initialize
类的方法,但我需要在Home
的所有方法中访问它不在每种方法中重复声明为new SandBox()
的类。
var PdClicksClass = Class.create();
PdClicksClass.prototype = {
initialize : function(){
var sb = new SandBox();
sb.attachEvents(/* some arguments here */);
},
toggleReviewSection : function(e){
//SandBox class methods should also use here
},
openImagePopup: function(e){
//SandBox class methods should also use here
}
};
var projectDetails = new PdClicksClass();
PS:我不认为在new SandBox()
类的每个方法中声明Home
(,就像我在上面的初始化中所做的那样)一个虽然。
答案 0 :(得分:1)
而不是
var sb = //etc
你想做
this._sb = //etc
然后你可以参考
this._sb
下划线经常在js中用作私有值的约定。
答案 1 :(得分:1)
以下是我将执行此操作的对象属性的示例
function PdClicksClass() {
/* other class stuff here */
this.sb = new Sandbox();
}
PdClicksClass.prototype = {
getSandbox : function() {
return this.sb;
}
}
如果封装不是问题,只需通过PdClicksClass.sb