更改绑定存储的值时不会更新表单

Form not updated when values of binded store are changed

我有一个包含各种元素的表单。例如一个组合框,这里是视图部分:

xtype: 'combobox',
fieldLabel : 'Position de la commission',
labelAlign : 'top',
padding:'20 0 0 0',
displayField: 'parametreLibelle',
valueField: 'parametreValeur',

queryMode: 'local',
bind : {
    value: '{argumentairePosition}',
    store : '{positionsCommissionStore}'
},
reference : 'argumentairePosition',
itemId:'argumentairePosition',
listeners: {
    click: {
        element: 'inputEl',
        fn: 'onArgumentairePositionClick'
    }
}

我调用了一个函数来更改组合框中的选定值:

onAmendementReferenceChange: function() {
    let me = this;
    let amdtId = this.lookupReference('amendementDeReference').value;
    me.ajaxRequest({
        url: '/eloi/grille/changerAmendementReferenceArgumentaire',
        method: 'GET',
        params: { amdtId: amdtId },
        successFn: function (record) {
            let serverResponse = record && record.responseText ? Util.decodeJson(record.responseText) : undefined;
            let formulaireData = serverResponse ? serverResponse.data : undefined;

            if (formulaireData) {
                let vm = me.getViewModel();
                let store = vm.get('argumentaireRendreIdentiqueStore').first();

                store.set('argumentaireObjet', formulaireData.argumentaireObjet);
                store.set('argumentaireTexte', formulaireData.argumentaireTexte);
                store.set('argumentairePosition', formulaireData.argumentairePosition); // Breakpoint here
                store.set('argumentairePositionRapporteur', formulaireData.argumentairePositionRapporteur);
                store.set('argumentaireAmendementId', formulaireData.argumentaireAmendementId);

                //me.getView().refreshView();
            }
        }
    });
}

当我在浏览器中的注释指示的行中放置一个断点时,我可以看到商店的值实际上正在发生变化(在调试器中查看该行前后的 store.get('argumentaireObjet')),但是我的表单内容没有在我的页面中更新。我不明白为什么。有什么想法吗?

我尝试了各种技巧来刷新表单,但通常情况下,绑定应该可以。我不应该刷新。我错过了什么?

我正在使用 ExtJS 6。

好的,这确实有效。我需要更改 ViewModel 中的值,而不是商店中的值。

onAmendementReferenceChange: function() {
    let me = this;
    let amdtId = this.lookupReference('amendementDeReference').value;
    me.ajaxRequest({
        url: '/eloi/grille/changerAmendementReferenceArgumentaire',
        method: 'GET',
        params: { amdtId: amdtId },
        successFn: function (record) {
            let serverResponse = record && record.responseText ? Util.decodeJson(record.responseText) : undefined;
            let formulaireData = serverResponse ? serverResponse.data : undefined;

            if (formulaireData) {
                let vm = me.getViewModel();
                vm.set('argumentaireObjet', formulaireData.argumentaireObjet);
                vm.set('argumentaireTexte', formulaireData.argumentaireTexte);
                vm.set('argumentairePosition', formulaireData.argumentairePosition);
                vm.set('argumentairePositionRapporteur', formulaireData.argumentairePositionRapporteur);
                vm.set('argumentaireAmendementId', formulaireData.argumentaireAmendementId);
            }
        }
    });
}