extjs绑定父对象';s可绑定属性到子对象';s

extjs绑定父对象';s可绑定属性到子对象';s,extjs,extjs6-classic,Extjs,Extjs6 Classic,我有一个容器,其中包含一个或多个表单字段。我想将父容器的hidden属性绑定到子项的disabled属性 我们如何做到这一点 我有一把小提琴要举例说明。我的可选容器中有必填字段。因此,当可见时,它们应该是必需的,当隐藏时,它们应该是可选的。我知道我可以添加一个可以设置allowBlank:true的处理程序,但这似乎很乏味。您可以通过帮助隐藏\显示侦听器来实现这一点在viewModel中注册父对象的隐藏状态,以获取子组件中的父对象状态 将viewModel中的“containerHidden”属

我有一个容器,其中包含一个或多个表单字段。我想将父容器的
hidden
属性绑定到子项的
disabled
属性 我们如何做到这一点


我有一把小提琴要举例说明。我的可选容器中有必填字段。因此,当可见时,它们应该是必需的,当隐藏时,它们应该是可选的。我知道我可以添加一个可以设置
allowBlank:true
的处理程序,但这似乎很乏味。

您可以通过帮助隐藏\显示侦听器来实现这一点

在viewModel中注册父对象的隐藏状态,以获取子组件中的父对象状态

将viewModel中的“containerHidden”属性更改为true或false以测试它。

viewModel:{
数据:{
容器隐藏:对
}
},
默认值:{
labelAlign:“对”
},
项目:[
{
xtype:“textfield”,
字段标签:“名称”,
allowBlank:false
},
{
xtype:“日期字段”,
字段标签:“出生日期”,
emptyText:“18+获得更多选项”,
allowBlank:false,
听众:{
更改:“onDoBChange”
}
},
{
xtype:“容器”,
参考资料:“AgeRestrictedArea”,
绑定:{
隐藏:“{containerHidden}”
},
默认值:{
labelAlign:“对”
},
项目:[
{
xtype:“textfield”,
字段标签:“爱好”,
allowBlank:false,
绑定:{
已禁用:“{containerHidden}”
}
}
]
}
]

这不起作用。使用
公式返回上一选项)。不工作是什么意思?你是说这里的密码还是小提琴?该表单在容器的两种状态下都有效。你能告诉我什么不起作用吗?代码和小提琴不起作用。18岁表单上的日期字段中的try set值有效,因为init state hobby字段中的hobby已禁用,但状态未更改,在容器上可见更改的位置我很抱歉,没有通知我。查找(“AgeRestrictedArea”).setHidden();这行:))现在应该可以了