gpt4 book ai didi

javascript - 在 initComponent 中验证

转载 作者:行者123 更新时间:2023-11-30 17:25:45 24 4
gpt4 key购买 nike

我正在扩展 Ext 3.3 中的一个窗口,该窗口在许多地方被调用,并且自身有许多扩展。此窗口有一个可配置的字段。当这个字段为空,或者不包含任何项目时,我想显示一条错误消息,而不是继续显示窗口。这就是我的处理方式:

data: null,
initComponent: function() {
if(data && data.length > 0) {
...
$this.superclass.initComponent.apply(this, arguments);
} else {
Ext.MessageBox.alert(...)
}
}

这是执行此操作的合适方式/地点吗?我已经考虑过在调用组件时进行验证,但考虑到会发生这种情况的地方太多,我不想要太多冗余代码。我的困惑主要在于不清楚 initComponent 前后发生了什么,或者是否有一种简单易读的方法可以完全消除组件调用。

编辑:以上肯定是错误的。我认为它能正常工作只是因为抛出错误而不是渲染窗口。

最佳答案

在我看来,beforerender 事件将是一个好地方:当您返回 false 时,组件将不会呈现。

  listeners: {
beforerender: function(){
if(!data || data.length == 0) {
Ext.MessageBox.alert(...);
return false;
}
}
}

关于javascript - 在 initComponent 中验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24315065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com