过滤RecyclerListView的数据

时间:2019-12-26 13:24:06

标签: reactjs react-native recyclerlistview

我正在尝试使用RecyclerListView通过过滤器实现基本列表。 但是,只要键入一些文本并且滚动条不在顶部,它就会抛出异常,没有可用于索引的布局。

在小吃https://snack.expo.io/SJY6NU00B中看到

复制说明:

  1. 滚动到底部
  2. 在TextInput中输入字母“ A”

结果:

  

没有可用于索引的布局:233 LayoutUnavailableException:否   可用于索引的布局:新e处为233   (module://recyclerlistview.js:3:1527),网址为e.getOffsetForIndex   (module://recyclerlistview.js:3:5917),位于t.refreshWithAnchor   (module://recyclerlistview.js:3:26794),网址为e._checkAndChangeLayouts   (module://recyclerlistview.js:3:16117)在e.componentWillReceiveProps   (module://recyclerlistview.js:3:11983)在Hi([小吃内部]在ha   (在Js的[snack internals](在js的[snack internals]   在Ps   (https://s3.us-west-1.amazonaws.com/snack-web-player/36/static/js/2.d51b9d02.chunk.js:1:1086639

我做错了吗?

1 个答案:

答案 0 :(得分:2)

在包装本身中,我执行了以下操作:

LayoutManager.js lines: 64-67中注释掉引发异常的行

相反,只需放置return { x: 0, y: 0};

WrapGridLayoutManager.prototype.getOffsetForIndex = function (index) {
    if (this._layouts.length > index) {
        return { x: this._layouts[index].x, y: this._layouts[index].y };
    }
    else {
        return { x: 0, y: 0};
        // Commented the part that throws exception
        // throw new CustomError_1.default({
        //     message: "No layout available for index: " + index,
        //     type: "LayoutUnavailableException",
        // });
    }
};

我已打开问题,但仍未解决 https://github.com/Flipkart/recyclerlistview/issues/446