我打电话给商店。在load
监听器上,我需要测试一条记录,然后将一个布尔值发送到一个变量,将readOnly设置为我的字段。
我不知道如何更改我的viewmodel数据中的变量。我默认放置
readOnly : {
value : true
}
在我的虚拟机中。我使用bind属性在我的组件中捕获它:
bind: {
readOnly: '{readOnly.value}'
}
然后......我不知道..我想在变量 readOnly 中写入布尔值,然后在我的ViewModel上捕获它,如下所示:
/ *可变文件* /
Ext.define('routing.utils.Vars', {
alternateClassName: 'gv',
readOnly : false
});
/ *商店文件* /
[...]
listeners: {
load : function(store,record){
if(a = b) {
gv.readOnly = true;
}
else {
gv.readOnly = false;
}
}
}
[...]
/ * ViewModel文件* /
formulas: {
readOnly: {
get: function(get){
return gv.readOnly;
}
}
}
购买我的readOnly不会改变...如何绑定变量呢?
答案 0 :(得分:2)
您可以使用viewmodel上的set方法在viewmodel数据属性上设置属性。
yourViewModel.set('readOnly',{
value:newValue
});
您可以使用以下方法从viewController获取ViewModel:
viewController.getViewModel();
Have a look here了解如何使用属性绑定