react全局状态管理_react 状态管理的复杂度来源
Ui = f(data)
本来按照这个公式,前端开发应该是非常愉悦的。最近发现有一些复杂度是因为现有的工具造成的,导致上面这个公式并不成立。
- 如果 data 不是一个浏览器的数据,而是数据库里的数据。这个 Ui 是不能直接等于 f(data) 的,只能是 Ui = f(local_data)。这个 local data 就变成了一份需要手工维护的前端状态。
- 如果 data 不是一个组件内的数据,而是其他组件的数据。这个就是所谓的兄弟组件通信之类的问题。很大程度也是因为,在我 render 的时候,我拿不到我想要的数据,Ui = f(my_data)。
- 如果 data 不是一个我们希望 react 管理的数据(因为性能原因)。https://www.react-spring.io/ 这样的高性能动画库都是自己管理数据的。Animated Ui = f(animated_data)。在使用的时候也要在 react 管理的数据,和 react-spring 管理的数据之间实现同步。
react 状态管理远不远不是一个解决了的问题。我希望的解决方案是
- 可以像使用浏览器本地数据一样,渲染远程获取的数据
- render 的时候可以用我这个组件的数据,也可以用 query 去查询前端其他组件的数据
- 动画的 Ui 和 React Ui 都是从同一份状态渲染来的,只是两个 renderer 而已。
react全局状态管理_react 状态管理的复杂度来源相关推荐
- react 状态驱动_React状态:做最少的事情
react 状态驱动 为什么国家要解决如此棘手的问题? (Why is state such a hard problem to tackle?) State is a very hard conce ...
- react全局状态管理_react状态管理redux
Redux(上) 结合阮老师的技术博客,将自己吸收到的内容做了个整理: 曾经有人说过这样一句hua : 如果你不知道是否需要Redux,那就是不需要它. 从组建层面考虑,什么样子的需要redux:某个 ...
- flutter 局部状态和全局状态区别_Flutter状态管理
Flutter状态管理 状态管理是声明式编程非常重要的一个概念,我们在前面介绍过Flutter是声明式编程的,也区分声明式编程和命令式编程的区别. 这里,我们就来系统的学习一下Flutter声明式编程 ...
- apollo配置中心的组件_如何使用Apollo的全新查询组件来管理本地状态
apollo配置中心的组件 Note: This article deals with utilizing Apollo's brand new Query and Mutation componen ...
- Vue + Element UI 实现权限管理系统 前端篇(八):管理应用状态
使用 Vuex 管理应用状态 1. 引入背景 像先前我们是有导航菜单栏收缩和展开功能的,但是因为组件封装的原因,隐藏按钮在头部组件,而导航菜单在导航菜单组件,这样就涉及到了组件收缩状态的共享问题.收缩 ...
- k8s的Pod状态和生命周期管理
Pod状态和生命周期管理 一.什么是Pod? 二.Pod中如何管理多个容器? 三.使用Pod 四.Pod的持久性和终止 五.Pause容器 六.init容器 七.Pod的生命周期 (1)Pod pha ...
- 管理订单状态,该上状态机吗?轻量级状态机COLA StateMachine保姆级入门教程
前言 在平常的后端项目开发中,状态机模式的使用其实没有大家想象中那么常见,笔者之前由于不在电商领域工作,很少在业务代码中用状态机来管理各种状态,一般都是手动get/set状态值.去年笔者进入了电商领域 ...
- Java使用cookie和session管理用户状态
一个做移动端的,要做服务端的一些工作,没办法,工作还的继续,这就是生活,废话不说,总结一下这一天的东西,逆水行舟,努力,努力. Java什么是状态管理 一般我们会将浏览器与服务器之间多次的交互当作一个 ...
- 14.State-理解原理即可、Flink中状态的自动管理、无状态计算和有状态计算、状态分类、Managed State Raw State\Keyed StateOperator State
14.State-理解原理即可 14.1.Flink中状态的自动管理 14.2.无状态计算和有状态计算 14.2.2.有状态计算,需要考虑历史值,如:sum 14.2.3.状态分类 14.2.4.Ma ...
最新文章
- jupyter notebok 调用本目录下的其他py文件
- 服务器重启后启动Docker命令
- SAP Authenticator apk下载
- java 子类的同名方法_java 父类子类有同名方法时如何调用的实现
- 生成 linq to sharepoint 对象模型sharepoint 母板页
- python编辑配置_Python环境安装及编辑器配置(一)
- python api框架 hook_python学习之hook钩子的原理和使用
- javaweb课程PSP(1)
- mysql备份命令_mysql命令行备份方法
- java 导出word文件,支持导出表格和图片
- 一阶微分方程解的存在定理
- 公众号openid能做用户识别_做公众号能不能转载别人文章?我的建议是...
- 2023年东南大学英语笔译考研上岸前辈备考经验指导
- 【Three.js入门】标准网格材质、置换贴图、粗糙度贴图、金属贴图、法线贴图
- android 圆圈扩大动画,Android实现3个圆圈的动画
- catboost 的实例应用附带特征重要度打印
- 什么是SQL注入攻击?
- 华东地区响应最快的DNS服务排名
- 世界各国GDP相关面板数据(1960-2019年)
- 彻底关闭windows Update服务