【发布时间】:2015-12-31 03:36:29
【问题描述】:
我是相当新的 Ext JS,并试图在 Panel 中嵌入 MultiSelect。
ViewModel有一个stores属性,您可以在此处看到:
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
}
}
});
我想将它绑定到我的
View中,如下所示:
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'
}
在这种情况下,store 以null 结束,并且没有数据加载到小部件中。但是,如果我只是在视图中对其进行硬编码,而不是绑定商店,那么它就可以工作。
有人知道问题是什么吗?
【问题讨论】:
-
你为什么决定 store 为空?对我来说,提供的 sn-p 很好,应该可以工作。您应该提供视图的所有代码,最好提供 jfiddle 或 sencha fiddle 来演示问题。
-
@yorlin - 谢谢,我会尝试组合一个煎茶小提琴。错误是
Uncaught TypeError: Cannot read property 'autoCreated' of null -
我有您视图的确切绑定结构,但对于 Combobox 并且它不起作用。通过为组合设置'queryMode:local'在腰后很多分钟它起作用了。 :|
标签: javascript extjs mvvm extjs6