mobx在react native中报警告: attempt to read an array index that is bounds...

在rn开发中,一个FlatList中数据用到mobx,遇到下图中的警告


mobx在react native中报警告: attempt to read an array index that is bounds..._第1张图片
Simulator Screen Shot - iPhone 6 - 2018-01-08 at 11.44.31.jpg

查到下面的issues解决了问题,就是不要直接使用mobx的数据,slice一下就没有警告了;
Issues链接


historyData为mobx数据,作如下改动,就没有警告了


但是如果是SectionList,其数据结构是多维数组,只是在调用mobx数据时slice一下依然会有警告,因为其数据内部的数组依然是mobx数据,此种情况可使用computed改造数据,代码如下:

//class GroupChatListStore
@observable sectionData = [
        {
            key: "临时群组",
            data: [0,1,2 ]
        },
        {
            key: "我的圈子",
            data: [0,1,2]
        }
    ];
@computed get formattedList(){
        return this.sectionData.map((v)=>{
            return {
                key: v.key,
                data: v.data.slice(),
            }
        }).slice();
    }

//使用方法

你可能感兴趣的:(mobx在react native中报警告: attempt to read an array index that is bounds...)