Ext.Msg.show({
title: 'Validation',
message: message,
height: 300,
scrollable: true,
buttons: Ext.MessageBox.OK
});
这段代码有问题。对于这个特定的消息框,我希望高度为 300 并且可滚动为 true,因为消息非常大。然而,在调用它之后,任何消息框(确认、警告、提示)似乎都继承了我不想要的高度和可滚动值。
我查看了 Ext.Msg 的 show() 方法的代码,它看起来像任何传递给配置的东西,即上面代码中的所有参数都合并到所有 Ext.Msg 对象的默认配置中。这似乎发生在这一行:
config = Ext.merge({}, this.defaultAllowedConfig, config);
我尝试寻找一种方法,允许我在调用 show 后将所有默认值重置为默认值,但看起来我做不到。使用
Ext.Msg.defaultAllowedConfig.height = [some number];
不起作用有两个原因,首先 defaulAllowedConfig 仅在没有默认值时才使用,用于显示任何特定消息,即提示警报或确认。其次,Sencha 文档显示的默认高度设置为“自动”,这不是在此语句中传递的有效值。
有人知道解决这个问题的方法吗?很抱歉,这是一篇很长的帖子,但我现在完全卡住了。
最佳答案
您可以通过为自定义消息框创建新的 Ext.MessageBox
实例来解决此问题,而不是使用 Ext.Msg
单例。
那么您的代码可能如下所示:
Ext.create('Ext.MessageBox').show(
{
title: 'Validation',
message: message,
height: 300,
scrollable: true,
buttons: Ext.MessageBox.OK
}
);
关于javascript - Sencha Touch、MessageBox 更改默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24412039/