用ExtJS创建对象时出错
Error while creating objects with ExtJS
当我尝试在ExtJS中创建一个新对象时,我遇到了麻烦。首先创建一个新对象,然后创建同一类的另一个对象。在那个类中,我有一个属性,叫做form。此属性的类型为"object"。我将在下面显示:
Ext.define('ExampleClass', {
extend: 'Ext.Component',
form: {
last: null
},
initComponent: function() {
if(this.form.last == null) {
this.form.last = this;
}
else {
console.log(this.form);
}
this.callParent(arguments);
}
});
代码很简单。当我创建第一个对象时。当我创建第二个对象时,控制台显示第一个对象(进入else条件)。只有当我有一个对象作为类的属性时才会发生这种情况。这可能是Ext的一个bug,或者我真的需要克隆类中的所有对象,每次我创建一个新对象?
您需要在initComponent
中创建表单,因为您希望每个ExampleClass
实例都有一个单独的实例。
initComponent: function() {
this.form = {
last: null
};
...
在您当前的实现中,只有一个 form
对象,因为Ext.define
只被调用一次。然后在实例化时,将对现有对象的引用传递给实例。
相关文章:
- 在创建对象后附加一个jquery事件
- 错误:自动化服务器可以't创建对象
- 如何在不使用 new 关键字的情况下从函数创建对象
- 文本表示法VS.构造函数,用于在JavaScript中创建对象
- 创建对象函数原型和代码是错误的
- 使用Undercore创建对象集合
- 如何在JavaScript中创建对象时使用变量的值
- 正在创建对象的递归列表
- 这两种不同的创建对象文字的方法有什么区别
- ES6 const,用于在JavaScript中创建对象原型;这是一种模式吗
- 使用字符串作为名称创建对象
- 使用参数创建对象
- 如何在JS中创建对象的可变和不可变副本
- 用javascript创建对象的dynamic数组
- Javascript,用vars创建对象的最佳方法
- 离子幻灯片框中未创建对象
- 在创建对象时调用javascript函数
- JavaScript - 有没有办法动态创建对象的新实例
- 为什么使用 Object('123') 创建对象会创建一个 String() 对象,但 typeof 是“对象”
- 用ExtJS创建对象时出错