【问题标题】:Cannot read property 'removeCls' of null for tagfield in ExtJS 5无法读取 ExtJS 5 中标记字段的 null 属性“removeCls”
【发布时间】:2015-06-12 13:29:43
【问题描述】:

我正在升级我的 ExtJs 应用程序 form 4 to 5.1 。最初我使用来自UXboxselect 组件,但在ExtJS 5.1 中,此组件位于核心Ext 目录中。所以我删除了 boxselect 并替换为标签字段,如升级指南中所述。但是在这样做之后我开始收到这个错误

未捕获的类型错误:无法读取 null 的属性“removeCls”。

如果我用组合重命名标签字段,它可以正常工作。

我只更改xtype : '',没有别的,不知道我在升级boxselect to tagfield in extjs 5 时还缺少什么?

编辑 -: 经过更多调试后,我在Ext.form.field.Text..的toggleInvalidCls()方法中发现了问题。请在下面找到代码,

toggleInvalidCls: function(hasError) {
    var method = hasError ? 'addCls' : 'removeCls';
    this.callParent();
    this.triggerWrap[method](this.triggerWrapInvalidCls);//getting error here
    this.inputWrap[method](this.inputWrapInvalidCls);
},

this.triggerWrap 对象为标签字段为空...任何原因? Brwoser 控制台还在抛出 removeCls 错误之前显示警告 XTemplate evaluation exception: wrapperStyle is not defined...

【问题讨论】:

    标签: javascript extjs extjs4 extjs5


    【解决方案1】:

    我的组合覆盖有问题。刚刚删除了现有的组合覆盖,现在可以显示标签字段。

    我忘记了我的应用程序中有组合覆盖。

    记住 - 如果您将 tagifled 与现有的组合覆盖一起使用,请考虑在升级 extjs 5 时使用标签字段。

    【讨论】:

      最近更新 更多