React native Listview 使用react-redux时候更新不起效果

这个项目开发一个月了,接近尾声,前几天遇到一个问题,正如题目所说,我检查了所有的代码逻辑,没有发现任何问题,但是就是不给我刷新,删除也不刷新,我就日了够了,我就不信了。我决定重新去看下文档。

当我看到:

http://reactnative.cn/docs/0.31/listviewdatasource.html

这个文档的

我们使用concat方法修改this._data以创建新数组,注意不能使用push方法拼接数组

的时候,抱着怀疑的态度去修改一下。

我了个大曹

修改前的代码

// 入口函数,需要先存储历史数据,然后再进行展示

export function createHistoryData(rowData) {
    return (dispatch) => {
        let dao = new NetInfoDataDAO();

        historyList.unshift(rowData);
        dao.save(historyList).then((msg) => { dispatch(historyDataSuccess(historyList)); Toast.show('测试成功',{ position: px2dp(-80) }); },(msg) => { historyList.shift(); //save Failed,pop the data from the list Toast.show('测试失败',{ position: px2dp(-80) }); }); }; }

修改后的代码

// 入口函数,需要先存储历史数据,然后再进行展示

export function createHistoryData(rowData) {
    return (dispatch) => {
        let dao = new NetInfoDataDAO();
        historyList = [rowData].concat(historyList)
        // historyList.unshift(rowData);
        dao.save(historyList).then((msg) => { dispatch(historyDataSuccess(historyList)); Toast.show('测试成功',{ position: px2dp(-80) }); }); }; }

哎呀。坑啊。是我不了解原理。为啥要用两个不同的数组。

相关文章

一、前言 在组件方面react和Vue一样的,核心思想玩的就是组件...
前言: 前段时间学习完react后,刚好就接到公司一个react项目...
前言: 最近收到组长通知我们项目组后面新开的项目准备统一技...
react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...