【问题标题】:ExtJS remoteFilter with List does not work带有 List 的 ExtJS remoteFilter 不起作用
【发布时间】:2017-06-12 15:01:03
【问题描述】:

我有一个remoteFilter: true 的商店,当我加载结果和排序时,我从远程源得到正确的响应,但是当我尝试过滤一个值时,我在控制台中收到错误消息

TypeError: Cannot read property 'items' of null

我可以在来自服务器的响应中看到过滤正在正确发送和接收。

在我的网格列中,我有以下内容(假值 - 因为我的代码在 Intranet 上,所以我手动输入它们):

{ text: 'Header Whatever', dataIndex: 'status', filter: { type: 'list', dataIndex: 'remoteStatus',//the value from the remote source is different from my model (changing it doesn't fix it) single: true, options: [ 'visible', 'invisible' ] } }

过滤其他列中的文本字符串可以正常工作,如果没有结果,我不会收到错误消息。过滤我的自定义选项调用并从远程源获取正确的响应,但我收到错误并且加载掩码没有消失。

所有远程排序工作和使用字符串过滤工作。不幸的是,我必须提供一个值列表供用户过滤,所以在这里使用字符串过滤器是不可能的。

任何想法我错过了什么?我正在使用 ExtJS 6.0.1。我在 Sencha 的论坛上发布了这个问题,但那里没有太多支持。

【问题讨论】:

    标签: extjs6


    【解决方案1】:

    好的...我认为问题可能与列表存储的加载有关。我正在定义一个新的列表存储,但我想它没有被实例化。通过变量添加商店,我可以让它加载

    var mystore = Ext.create('Ext.data.Store', {
        fields: ['id'],
        data: [
            { id: 'invisible'},
            { id: 'visible'}
        ]
    });
    
    ....
    
    filter: {
        type: 'list',
        store: mystore,
        idField: 'id',
        labelField: 'id',
        dataIndex: 'remoteStatus',
        ....
    

    【讨论】:

      猜你喜欢
      • 2012-12-29
      • 2023-04-04
      • 1970-01-01
      • 2012-04-01
      • 2010-12-09
      • 2020-08-09
      • 1970-01-01
      相关资源
      最近更新 更多