[发明专利]一种基于MVVM模式的操作IndexedDB的javascript库在审
申请号: | 202110603195.9 | 申请日: | 2021-05-31 |
公开(公告)号: | CN113204442A | 公开(公告)日: | 2021-08-03 |
发明(设计)人: | 刘涛;刘博;吴杰;范渊;吴永越;郑学新;刘韬 | 申请(专利权)人: | 成都安恒信息技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/455;G06F16/25;G06F16/23 |
代理公司: | 成都君合集专利代理事务所(普通合伙) 51228 | 代理人: | 张鸣洁 |
地址: | 610000 四川省成都市自由贸易试验区成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 mvvm 模式 操作 indexeddb javascript | ||
1.一种基于MVVM模式的操作IndexedDB的javascript库,其特征在于:包括初始化模块、控制模块、错误处理模块、webworker模块和mv程序模块,所述控制模块分别和初始化模块、错误处理模块、webworker模块、mv程序模块连接;
所述初始化模块用于初始化javascript库,在javascript库加载的时候运行一次,初始化模块在运行时首先检测当前环境是否支持IndexedDB数据库,若支持,则通过参数新建或代开数据库,若不支持,则由错误处理模块反馈错误,然后初始化模块和控制模块通信;
所述控制模块用于统一调度除初始化模块外的其他模块并管理数据流,并在外部数据流入程序时,触发控制模块中的拦截命令,由拦截命令拦截后,mv程序模块新建视图数据监听对象,监听视图中数据的变化,并由webworker模块执行插入操作;
所述错误处理模块用于反馈错误:在操作出现错误或模块中出现错误时,由错误处理模块反馈错误到控制模块;
所述webworker模块用于javascript库与外部的消息收发,并将消息的收发情况通知控制模块,所述webworker模块还用于提供promise化的操作接口;
所述mv程序模块用于建立视图数据与内存数据的通信关系:建立视图数据监听对象,监听视图中数据的变化,获取页面传回的回调函数,建立用于修改内存数据的函数队列。
2.根据权利要求1所述的一种基于MVVM模式的操作IndexedDB的javascript库,其特征在于:所述webworker模块包括线程通信模块和db操作模块,所述线程通信模块用于javascript库与外部的消息收发,并将消息的收发情况通知到控制模块;所述db操作模块用于提供promise化的操作接口。
3.根据权利要求2所述的一种基于MVVM模式的操作IndexedDB的javascript库,其特征在于:所述db操作模块提供模糊匹配、多条件联查、排序和分页功能。
4.根据权利要求3所述的一种基于MVVM模式的操作IndexedDB的javascript库,其特征在于:所述db操作模块中的模糊匹配通过IndexedDB本身的API快速获取全部数据,然后根据用户传入的参数基于数组的filter函数实现数据的匹配。
5.根据权利要求3所述的一种基于MVVM模式的操作IndexedDB的javascript库,其特征在于:所述db操作模块中的多条件联查,是将多个条件基于条件的顺序分解成数组,然后先根据第一个条件进行一次数据库查询得到一次查询结果,如果和后面的条件的连接词是“且”,则对一次查询结果进行二次筛选得到二次筛选结果,如果和后面的条件的连接词是“或”,则进行第二次数据库查询得到二次查询结果,直到所有的条件执行完毕,最后对所有查询结果和筛选结果进行合并去重得到最终的联查结果。
6.根据权利要求3所述的一种基于MVVM模式的操作IndexedDB的javascript库,其特征在于:所述db操作模块中的排序是根据用户传入的参数对获取的数据使用sort函数进行排序。
7.根据权利要求6所述的一种基于MVVM模式的操作IndexedDB的javascript库,其特征在于:所述db操作模块中的分页是基于排序使用截断数组的方式进行分页。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都安恒信息技术有限公司,未经成都安恒信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110603195.9/1.html,转载请声明来源钻瓜专利网。