【发布时间】:2016-05-15 20:04:21
【问题描述】:
我是 js oop 的新手,我不明白我该怎么做。
我有
var Cadastro = Object.create(QForm);
var options = {
myInstanceName: "Cadastro",
dependentListsMode: "one",
defaultButtons: ['enter-query', 'new']
}
Cadastro.initForm(options);
然后我有 QForm.js
var QForm;
QForm = {
initForm: function (parms) {
$.extend(this, parms);
var frmObj = $(this.formId);
this.userRestrictions(parms);
$(this.currentForm).find("a[data-form-action]").hide();
this.clearForm();
this.disableFields();
},
问题是,如果我在同一页面中有 e 对象,this.currentForm 具有最新实例化对象的值。
QForm.js 是一个非常丰富的文件,包含很多方法。我该如何管理这个。谢谢
【问题讨论】:
-
你在哪里设置
this.currentForm? -
您似乎对对象、实例和类感到困惑。
-
this.currentForm 在选项中,我删掉了它,因为有太多属性。不要混淆对象、类或实例。但是 Robusto 你是对的,qform 是一个对象而不是一个类
-
QForm 是对象文字,我必须使用构造函数。就这样?
-
另外,如果您在一个独立的小型示例中重现您的问题会很好,您可以从我的答案中的代码开始并扩展它以显示问题。
标签: javascript oop object