Ich bin ziemlich neu Ext JS und versuchen, eine MultiSelect in eine Panel einzubetten.Wie binden Sie ViewModel Store an View?
Die ViewModel
hat eine stores
Eigenschaft, wie Sie hier sehen können:
Ext.define('TEST.view.controls.search.SearchFilterModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.filter',
data: {
title: ''
},
stores: {
test: {
fields: [ 'id', 'name' ],
proxy: {
type: 'ajax',
url: 'api/test',
reader: 'array'
},
autoLoad: true
}
}
});
Ich möchte, dass wie dies in meinem View
binden:
viewModel: {
type: 'filter'
},
layout: 'fit',
border: 1,
plain: true,
scrollable: 'y',
layout: 'fit',
bind: {
title: '{title}',
},
items: {
xtype: 'multiselect',
scrollable: false,
allowBlank: true,
ddReorder: true,
bind: {
store: '{test}'
},
valueField: 'id',
displayField: 'name'
}
In diesem Fall wird die store
endet als null
obwohl und keine Daten in das Widget geladen werden. Anstatt den Speicher zu binden, wenn ich ihn nur in der Ansicht fest codiere, funktioniert es.
Wer sieht, was das Problem ist?
Warum haben Sie entschieden, dass der Laden null ist? Für mich ist das mitgelieferte Snippet gut und sollte funktionieren. Sie sollten den ganzen Code der Ansicht zur Verfügung stellen, das Beste wird sein, jfiddle oder sencha fiddle zur Verfügung zu stellen, um das Problem zu demonstrieren. – yorlin
@yorlin - Danke, ich werde versuchen, eine Sencha-Geige zusammenzustellen. Der Fehler war 'Uncaught TypeError: Kann die Eigenschaft 'autoCreated' von null ' – david