React Native Reducer结构较深与render map展示刷新问题

来源:互联网 发布:mysql trigger 判断 编辑:程序博客网 时间:2024/05/17 09:00

上周在做一个膳食项目,项目核心需求是
上传三天的膳食拍照图片,
1、one day by one day(四级水平。。。)
2、每天的信息精确到三餐(可灵活加餐)、
3、餐前(后)、
4、拍照角度(45、90、145)

背景情况
一、
后端给的参数也决定了,我需要用到三位数组来store我的膳食数据,由于可以实现灵活加餐,所以我最外层数组的长度是大于3的动态情况

二、
为了提高前端代码的可读性,我充分发挥了三位数组结构的逻辑优越性,连用了三个map循环render膳食图片

遇到的问题
一、
focus界面的时候,拿到数据之后我会重新初始化我的reducer结构(肯定不能枚举三位数组吧),这时我的最底层数据不能实现重新渲染

二、当我实现动态加餐的时候,新增缺省数据不能重新渲染

可行性解决方案分析:
1、reducer结构写的过深 =》 尝试:强制刷新并没有用
2、reducer结构初始化失败、数据没有写入 =》 尝试:在Debugger上可以看到state精确信息
3、map 的key问题 => 尝试:没毛病

真实原因:
三层map写的过深,我尝试把最内层的map去掉,发现一切问题都解决了,避免了代码重构的厄运

阅读全文
1 0
原创粉丝点击