Redux如何同步state中的数据?

就以segmentfault的问答系统为例,简化一下,有两个Top Component,一个是Dashboard,一个是User,Dashboard会展示当前的问题列表,User会显示个人信息,同时显示与这个人相关的问题列表,那么在state我设计的model是这样的:

{    'dashboard': {        'questions': []
    },    'users':[
        {            'id': 1,            'nickname': 'blabla',            'questions': []
        }
    ]
}

user和dashboard中可能会有相同的问题,那如何处理两个对象之间的同步呢?比如在User页面我删除了一个问题或者改变了其状态,当切换到dashboard时如何能立即显示出来呢?

我想到的方法:

  • 每次切换页面都从后台刷新,这样保证获取的对象是最新的【但存在的问题是可能有延时,请求也可能失败】

  • 在reducer中查找相关的对象,并做相应的修改【这里给出的其实是一个最简单的例子,在实际项目中,state中的结构要复杂得多,查找对象就会特别麻烦】

或者大家都是怎么设计state来防止这种问题的?


潇湘沐
浏览 1098回答 1
1回答

慕桂英4014372

单独放questions,不同页面筛选显示。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript