使用商店的过滤内容填充组合框

时间:2012-02-29 03:34:27

标签: extjs combobox filter store

我正在使用Ext.js 4

我试图在过滤后使用商店的内容填充组合框。

我有一个JSON对象(很快将成为一个MySQL表)调用Lists,其中包含listId和name数组。我想根据listId填充我的组合框。

这是我的代码,位于组合框定义的顶部:

Ext.define('FirstApp.view.tab.Edit', {
extend: 'Ext.window.Window',
alias : 'widget.tabedit',

title : 'Edit Worksheet',
layout: 'fit',
autoShow: true,

id: 'tab.Edit',

initComponent: function() {

    var store = Ext.getStore("Lists");
    console.log('store: ' + store);
    var listFilter = new Ext.util.Filter({ property: 'listID', value: 2 });
    console.log('listFilter: ' + listFilter);
    var list2 = store.load().filter(listFilter);
    console.log('list2: ' + list2);

然后再......

    store: list2,

但是根据以下控制台消息,我得到list2未定义...

store: [object Object]
listFilter: [object Object]
list2: undefined

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

filter方法不返回商店,而是从商店中删除数据以供显示。因此,您无法通过返回该方法调用来设置变量。 因此,您的商店属性应该只设置为商店变量。