[发明专利]基于react项目的全局状态数据管理方法及系统在审
申请号: | 202011167627.8 | 申请日: | 2020-10-27 |
公开(公告)号: | CN112241282A | 公开(公告)日: | 2021-01-19 |
发明(设计)人: | 吴广;郑斌斌;程然;刘伟国;李智博;李亚峰;井辉辉;黄守毅;阙磊磊 | 申请(专利权)人: | 上海万向区块链股份公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 上海段和段律师事务所 31334 | 代理人: | 李佳俊;郭国中 |
地址: | 200086 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 react 项目 全局 状态 数据管理 方法 系统 | ||
1.一种基于react项目的全局状态数据管理系统,其特征在于,包括:
模块M1:定义全局共享数据模块以及每个全局共享数据模块对应的属性字段值;
模块M2:建立全局状态管理模块,通过全局状态管理模块导出源头组件和连接器;
模块M3:将项目最外层组件嵌套进源头组件,根据全局共享数据模块以及每个全局共享数据对应的属性字段值初始化源头组件的内部状态数据;并通过源头组件向项目内部注入共享数据以及全局状态更新函数;
模块M4:通过连接器包装需要获取全局状态数据的组件,组件在经过连接器包装处理后,获取源头组件注入的共享数据。
2.根据权利要求1所述的基于react项目的全局状态数据管理系统,其特征在于,所述模块M1包括:根据业务模块拆分全局共享数据,并根据项目实际需求建立多个不同全局共享数据模块,每个全局共享数据模块以key-value格式存储数据;每个全局共享数据模块定义对应的属性字段值,每一个属性字段值是被全局共享的状态值。
3.根据权利要求1所述的基于react项目的全局状态数据管理系统,其特征在于,所述模块M3包括:
模块M3.1:在项目最外层导入多个不同全局共享数据模块及相应属性字段值和源头组件,将各全局共享数据模块数据及相应属性字段值以参数传递的方式传入源头组件,源头组件内部将接收到的各全局共享数据模块数据及相应属性字段值初始化为源头组件的内部状态数据;
模块M3.2:通过React context的原生api将源头组件内部状态数据和全局状态更新函数注入到源头组件包裹的项目组件里。
4.根据权利要求1所述的基于react项目的全局状态数据管理系统,其特征在于,所述模块M4包括:
模块M4.1:在项目内部需要展示共享数据的组件里导入连接器,连接器包裹需要展示共享数据的组件,组件在经过连接器包装处理后,获取源头组件注入的共享数据;
模块M4.2:全局状态更新函数通过连接器的传递,组件内部获取全局状态更新函数,通过全局状态更新函数将需要更新的全局共享数据模块值传入组件内;
步骤M4.3:数据从更新的组件内传递到源头组件,源头组件更新自身的内部状态,内部状态注入到包裹的项目组件里,项目组件里调用连接器函数的组件接受的参数发生改变。
5.根据权利要求3所述的基于react项目的全局状态数据管理系统,其特征在于,所述全局状态更新函数包括:当组件调用传入不存在的全局共享数据模块或全局共享数据模块属性字段值时,全局状态更新函数通过循环遍历找到不合法的属性,并将不合法的属性舍弃;传入的全局共享数据模块经过舍弃后,保证传入的模块对象结构没有被污染,然后将传入的全局共享数据模块和原有的状态模块合并,得到新的将要被更新的全局共享数据模块。
6.一种基于react项目的全局状态数据管理方法,其特征在于,包括:
步骤M1:定义全局共享数据模块以及每个全局共享数据模块对应的属性字段值;
步骤M2:建立全局状态管理模块,通过全局状态管理模块导出源头组件和连接器;
步骤M3:将项目最外层组件嵌套进源头组件,根据全局共享数据模块以及每个全局共享数据对应的属性字段值初始化源头组件;并通过源头组件向项目内部注入共享数据以及更新共享数据的函数;
步骤M4:通过连接器包装需要获取全局状态数据的组件,组件在经过连接器包装处理后,获取源头组件注入的共享数据。
7.根据权利要求6所述的基于react项目的全局状态数据管理方法,其特征在于,所述步骤M1包括:根据业务模块拆分全局共享数据,并根据项目实际需求建立多个不同全局共享数据模块,每个全局共享数据模块以key-value格式存储数据;每个全局共享数据模块定义对应的属性字段值,每一个属性字段值是被全局共享的状态值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海万向区块链股份公司,未经上海万向区块链股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011167627.8/1.html,转载请声明来源钻瓜专利网。