フォームで自動的にViewControllerからメソッドを実行することは可能ですか?私は、このコントローラからのデータに基づいているべきcheckboxgroupを作成する必要があります。 ViewControllerのこのメソッドでは、JSONファイルからデータを取得していますが、ここではビューを更新しています。私は私の見解でリスナー内のボタンを持っているとき、すべてがOKですが、それは自動的に実行する必要があり、そしてcheckbox'esこのストアデータExtJs 6.2のストアに基づいてチェックボックスグループを構築する方法
onClickLoadData: function(){
console.log('onClickLoadData runned');
var gridStore = this.getStore('perosnellstore');
var columnsArray = this.getStore('perosnellstore').getProxy().getReader().rawData.cols.columns;
console.log(columnsArray.length);
for(var i = 0; i < columnsArray.length; i++){
var checkbox = Ext.create('Ext.form.field.Checkbox', {
boxLabel: columnsArray[i].text,
x: 0,
y: i * 30
});
Ext.ComponentQuery.query("#checkBoxGroupModules")[0].add(checkbox);
}
}
とのViewModelクラスに基づいて構築する必要があります:
Ext.define('Message.web.view.edit.EditViewModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.edit',
data:{
title: ''
},
stores : {
perosnellstore: {
fields : ['name'],
autoLoad: true,
proxy: {
type: 'ajax',
url : 'resources/response.json',
reader: {
type: 'json',
rootProperty: 'cols.columns',
keepRawData: true
}
}
}
}
});
自動的に実行されるとはどういう意味ですか?いつ実行する必要がありますか?何回ですか? –
1回、ビューをロードした後。私は構成ストアに問題があるので、私はこのようにしましたが、それが正しいかどうかはわかりません。 initComponentメソッドを使用しようとしましたが、このメソッドはアプリケーションの開始後に呼び出されます。 – Algeroth