CN105867919A - 一种基于访问器劫持的前端数据双向绑定实现方法 - Google Patents
一种基于访问器劫持的前端数据双向绑定实现方法 Download PDFInfo
- Publication number
- CN105867919A CN105867919A CN201610183393.3A CN201610183393A CN105867919A CN 105867919 A CN105867919 A CN 105867919A CN 201610183393 A CN201610183393 A CN 201610183393A CN 105867919 A CN105867919 A CN 105867919A
- Authority
- CN
- China
- Prior art keywords
- data
- attribute
- monitored
- binding
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于访问器劫持的前端数据双向绑定实现方法,包括以下步骤:1)在HTML的标签内添加各类必要的绑定属性,并指明与该属性绑定的监听数据名。2)新建监听数据的所属的ViewModel对象,申明和初始化其下的监听数据。3)扫描HTML标签上的绑定属性4)利用Object.defineProperty接口,为需要监听的数据设置writable属性为true;设置enumerable属性为true;设置configurable属性为true;为需要监听的数据设置初始值;为需要监听的数据设置属性的重写器(get方法);为需要监听的数据设置属性的读取器(set方法)。本发明方法能够实现对web应用中数据、界面以及它们之间复杂相互依赖关系的有效管理,效率更高,逻辑更清晰直观,单页面支持监听数据量也更多。
Description
技术领域
本发明涉及复杂web应用中大量前端元素数据、业务逻辑以及界面之间的管理,尤其涉及一种基于访问器劫持的前端数据双向绑定实现方法。
背景技术
早期的web应用以浏览为主,业务逻辑基本上仅限于表单的提交,javascript的作用体现在对表单的控制上,复杂度较低。90年代末,ajax横空出世,意味着浏览器已经可以承载更复杂的应用功能,2010年后,伴随着“web3.0”的浪潮,facebook、微博等各类大型web应用走向成熟,其程序的框架插件众多、体系繁复,复杂度达到了一个新的水准,往往让开发维护无所适从。为了更好地在前端进行模块化开发,合理组织业务数据,让界面和业务数据之间高效交互,MVVM框架应运而生,而双向数据绑定是MVVM框架的核心特性,也是管理web应用中复杂对象、数据、界面及其之间依赖关系的关键所在。
现有MVVM框架的双向数据绑定特性主要使用数据循环脏检测的方式实现,代表性的有AngularJs、Backbone等。数据循环脏检测实现方式在每次事件触发中都将对所有监听器进行遍历,页面上的指令和监听数据越多,遍历时间越长,页面可能由于循环时间过长而出现假死情况。而且,单个页面中能够承载的监听数据量也十分有限。
发明内容
本发明的目的是克服现有技术的不足,提供一种基于访问器劫持的前端数据双向绑定实现方法,能够确保当界面内容变化时,绑定的数据随之变化;而数据变化时,界面内容也同时发生变化,从而实现对web应用中数据、界面以及它们之间复杂相互依赖关系的管理。本发明利用先进的前端工程技术,简化了前端开发人员的工作,提高了前端开发和前端维护的效率。效率更高,逻辑更清晰直观,且单页面支持监听数据量也更多。
本发明中涉及到的名词解释。
web应用:Web应用程序是一种可以通过Web访问的应用程序。Web应用程序的一个最大好处是用户很容易访问应用程序。用户只需要有浏览器即可,不需要再安装其他软件。
MVVM框架:MVVM是Model-ViewModel-View的简写,被认为是前端开发领域最先进的设计模式,能够做到关注点分离,降低数据、用户界面与业务逻辑之间的耦合程度。MVVM框架就是符合MVVM思想的前端框架。
双向数据绑定:双向数据绑定是MVVM框架的核心特性,其内涵是:界面的改变能够反应在数据上,而数据改变后同时能够更新页面。
本发明的目的是通过以下技术方案来实现的:一种基于读取器劫持的前端数据双向绑定实现方法,具体步骤如下:
1)在HTML的标签内添加各类必要的绑定属性,并指明与该属性绑定的监听数据名。
2)新建监听数据的所属的ViewModel对象,申明和初始化其下的监听数据。
3)扫描HTML标签上的绑定属性,当绑定属性绑定的监听数据名与该标签所属ViewModel下的与监听数据名相同时,将该标签对应的DOM对象和监听数据进行绑定。
4)利用ECMAScript 262v5标准发布的Object.defineProperty(定义标准属性)接口,为需要监听的数据设置writable属性为true;设置enumerable属性为true;设置configurable属性为true。
5)利用Object.defineProperty接口,为需要监听的数据设置初始值。
6)利用Object.defineProperty接口,为需要监听的数据设置属性的重写器(get方法);为需要监听的数据设置属性的读取器(set方法)。
进一步地,所述的步骤1)包括:(1)设定作用域属性:以“gs-controller-”开头,后接用户自定义的ViewModel类名称,用于和具体的ViewModel对象相互绑定。(2)设定数据填充属性:用于将数据打印到页面上。(3)设定插入移除属性:用于控制不同情况下数据的显示与否。(4)设定特性属性:用于控制各种html标签支持的特性。(5)设定样式属性:用于控制CSS样式。(6)设定事件属性:以“gs-event-”开头,后接各种W3C标准事件名称,用于进行事件绑定。(7)设定循环属性:用于根据数组等可供循环操作的数据,在界面中重复输出内容。
进一步地,所述的步骤2)包括:新建监听数据的所属的ViewModel对象,申明和初始化其下的监听数据。其中,该对象即为设定作用域下,MVVM设计模式中的ViewModel对象,用于联结View对象(界面)和Model对象(数据),在该作用域下的所有监听数据都作为该对象的子对象存在,作用域的划分根据用户的标记来确定,并且作用域可以互相嵌套。
进一步地,所述的步骤3)包括:
(1)扫描:在得到文档树后,由顶向下,先找到元素节点,继而扫描特性标记、最后扫描文本节点,并递归这一过程,直至扫描结束,最终得到一个包含绑定节点所有必要信息的对象。
(2)转换求值函数:求值函数就是指监听数据改变时,对决定界面显示效果的某一个值(属性、样式、文本)进行修改的函数,这一步骤通过对特性标记的分析,得到具体的求值对象和求值逻辑,生成求值函数。
(3)订阅:采用观察者模式,将上一步转换生成的求值函数纳入监听数据的观察列表,当数据改变时,观察列表中的所有求值函数都将被顺序调用。
进一步地,所述的步骤4)包含三方面的内容:(1)writable属性描述符用于描述该属性是否可写,如果设置成false,则任何对该属性改写的操作都无效。(2)enumerable属性描述符用于描述该属性是否可以遍历,如果设置成false,就不能在for-in循环中遍历出来或在Object.keys接口中被列举出来。(3)configurable属性描述符用于描述该属性是否可删除,如果为false,则任何尝试删除目标属性或修改属性以下特性(包括writable、enumerable和configurable本身)的行为都将被无效化。(4)由于双向数据绑定要求满足对监听数据的修改和遍历,所以以上三个属性描述符均要设置为true。
进一步地,所述的步骤6)包含两方面内容:(1)重写器(get方法):重写器会在监听数据被读取时被调用,其目的主要在于数据的规范化处理,包括去空格、去回车、去特殊符号、空位补完等。(2)读取器(set方法):读取器是该发明实现的核心,当数据修改时,读取器会被调用。在本发明中,读取器被赋予一个能够访问订阅列表的回调方法,当监听数据改变时,该方法就会主动执行订阅列表中保存的所有求值函数。
本发明与现有技术相比具有的有益成果是:
1)前端双向数据绑定特性能够有效地管理数据、界面和业务之间的复杂逻辑和依赖响应关系,能够做到关注点分离,简化前端复杂度,提高前端开发人员的开发效率和维护效率。
2)在现有技术下(数值循环脏检测),每次事件触发都将对所有监听器进行遍历,页面上的指令和监听数据越多,遍历时间越长,页面可能由于循环时间过长而出现假死情况。本发明克服了这一问题,大大提升了监听效率,并将单页面最大监听数据数从2000个上升到12000个。
附图说明
图1是一种实现本发明方法的流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步详细说明。
本发明提出的基于访问器劫持的前端数据双向绑定实现方法,具体步骤如下:
1)在界面模板的标签内添加各类必要的绑定属性,并指明与该属性绑定的监听数据名。
2)新建监听数据的所属的ViewModel对象,申明和初始化其下的监听数据。
3)扫描界面标签上的绑定属性,当绑定属性绑定的监听数据名与该标签所属ViewModel下的与监听数据名相同时,将该标签对应的DOM对象和监听数据进行绑定。
4)利用ECMAScript 262v5标准发布的Object.defineProperty(定义标准属性)接口,为需要监听的数据设置writable属性为true;设置enumerable属性为true;设置configurable属性为true。
5)利用Object.defineProperty接口,为需要监听的数据设置初始值。
6)利用Object.defineProperty接口,为需要监听的数据设置属性的重写器(get方法);为需要监听的数据设置属性的读取器(set方法)。
所述的步骤1)包括:
(1)设定作用域属性:以“gs-controller-”开头,后接用户自定义的ViewModel类名称,用于和具体的ViewModel对象相互绑定。(2)设定数据填充属性:用于将数据打印到页面上。(3)设定插入移除属性:用于控制不同情况下数据的显示与否。(4)设定特性属性:用于控制各种html标签支持的特性。(5)设定样式属性:用于控制CSS样式。(6)设定事件属性:以“gs-event-”开头,后接各种W3C标准事件名称,用于进行事件绑定。(7)设定循环属性:用于根据数组等可供循环操作的数据,在界面中重复输出内容。
所述的步骤2)包括:新建监听数据的所属的ViewModel对象,申明和初始化其下的监听数据。其中,该对象即为设定作用域下,MVVM设计模式中的ViewModel对象,用于联结View对象(界面)和Model对象(数据),在该作用域下的所有监听数据都作为该对象的子对象存在,作用域的划分根据用户的标记来确定,并且作用域可以互相嵌套。
所述的步骤3)包括:
(1)扫描:在得到文档树后,由顶向下,先找到元素节点,然后优先处理skip、important、controller等三个绑定标记,继而扫描特性标记、最后扫描文本节点,并递归这一过程,直至扫描结束,最终得到一个包含绑定节点所有必要信息的对象。
(2)转换求值函数:求值函数就是指监听数据改变时,对决定界面显示效果的某一个值(属性、样式、文本)进行修改的函数,这一步骤通过对特性标记的分析,得到具体的求值对象和求值逻辑,生成求值函数。
(3)订阅:采用观察者模式,将上一步转换生成的求值函数纳入监听数据的观察列表,当数据改变时,观察列表中的所有求值函数都将被顺序调用。
所述的步骤4)包含三方面的内容:(1)writable属性描述符用于描述该属性是否可写,如果设置成false,则任何对该属性改写的操作都无效(2)enumerable属性描述符用于描述该属性是否可以遍历,如果设置成false,就不能在for-in循环中遍历出来或在Object.keys接口中被列举出来。(3)configurable属性描述符用于描述该属性是否可删除,如果为false,则任何尝试删除目标属性或修改属性以下特性(包括writable、enumerable和configurable本身)的行为都将被无效化。(4)由于双向数据绑定要求满足对监听数据的修改和遍历,所以以上三个属性描述符均要设置为true。
所述的步骤6)包含两方面内容:(1)重写器(get方法):重写器会在监听数据被读取时被调用,其目的主要在于数据的规范化处理,包括去空格、去回车、去特殊符号、空位补完等。(2)读取器(set方法):读取器是该发明实现的核心,当数据修改时,读取器会被调用。在本发明中,读取器被赋予一个能够访问订阅列表的回调方法,当监听数据改变时,该方法就会主动执行订阅列表中保存的所有求值函数。
实施例
第一步,在界面模板的标签内添加各类必要的绑定属性,并指明与该属性绑定的监听数据名。各类绑定属性如表1所示。代码如下:
<div ms-controller="hello">
<h1gs-text="name"></h1>
</div>
表1绑定属性表
第二步,新建监听数据的所属的ViewModel对象,申明和初始化其下的监听数据。代码如下:
var model=gs.define('hello',function(vm){
vm.name=null;
});
第三步,扫描界面标签上的绑定属性,当绑定属性绑定的监听数据名与该标签所属ViewModel下的与监听数据名相同时,将该标签对应的DOM对象和监听数据进行绑定。
第四步,利用ECMAScript 262v5标准发布的Object.defineProperty(定义标准属性)接口,为需要监听的数据设置writable属性为true;设置enumerable属性为true;设置configurable属性为true。主要代码为:
第五步,利用Object.defineProperty接口,为需要监听的数据设置初始值。主要代码为:
Object.defineProperty(vm,‘name‘,{
"value":"GISLab"
});
第六步,利用Object.defineProperty接口,为需要监听的数据设置属性的重写器(get方法);为需要监听的数据设置属性的读取器(set方法)。主要代码为:
Claims (6)
1.一种基于访问器劫持的前端数据双向绑定实现方法,其特征在于,包括如下步骤:
1)在HTML的标签内添加各类必要的绑定属性,并指明与该属性绑定的监听数据名。
2)新建监听数据所属的ViewModel对象,申明和初始化其下的监听数据。
3)扫描HTML标签上的绑定属性,当绑定属性绑定的监听数据名与该标签所属ViewModel下的监听数据名相同时,将该标签对应的DOM对象和监听数据进行绑定。
4)利用ECMAScript 262v5标准发布的Object.defineProperty(定义标准属性)接口,为需要监听的数据设置writable属性为true;设置enumerable属性为true;设置configurable属性为true。
5)利用Object.defineProperty接口,为需要监听的数据设置初始值。
6)利用Object.defineProperty接口,为需要监听的数据设置属性的重写器(get方法);为需要监听的数据设置属性的读取器(set方法)。
2.根据权利要求1所述的方法,其特征在于,所述步骤1)具体为:绑定属性以“gs”作为前缀,以“-”作为连接符,具体分为多类,包括:
(1)作用域属性:以“gs-controller-”开头,后接用户自定义的ViewModel类名称,用于和具体的ViewModel对象相互绑定。(2)数据填充属性:用于将数据打印到页面上。(3)插入移除属性:用于控制不同情况下数据的显示与否。(4)特性属性:用于控制各种html标签支持的特性。(5)样式属性:用于控制CSS样式。(6)事件属性:以“gs-event-”开头,后接各种W3C标准事件名称,用于进行事件绑定。(7)循环属性:用于根据数组等可供循环操作的数据,在界面中重复输出内容。
3.根据权利要求1所述的方法,其特征在于,步骤2)中的对象即为设定作用域下,MVVM设计模式中的ViewModel对象,用于联结View对象(界面)和Model对象(数据),在该作用域下的所有监听数据都作为该对象的子对象存在,作用域的划分根据用户的标记来确定,并且作用域可以互相嵌套。
4.根据权利要求1所述的方法,其特征在于,步骤3)中的绑定过程主要包括:
(1)扫描:在得到文档树后,由顶向下,先找到元素节点,继而扫描特性标记、最后扫描文本节点,并递归这一过程,直至扫描结束,最终得到一个包含绑定节点所有必要信息的对象。
(2)转换求值函数:求值函数指监听数据改变时,对决定界面显示效果的某一个值(属性、样式、文本)进行修改的函数,这一步骤通过对特性标记的分析,得到具体的求值对象和求值逻辑,生成求值函数。
(3)订阅:采用观察者模式,将上一步转换生成的求值函数纳入监听数据的观察列表,当数据改变时,观察列表中的所有求值函数都将被顺序调用。
5.根据权利要求1所述的方法,其特征在于,步骤4)中包含三方面的内容:
(1)writable属性描述符用于描述该属性是否可写,如果设置成false,则任何对该属性改写的操作都无效。
(2)enumerable属性描述符用于描述该属性是否可以遍历,如果设置成false,就不能在for-in循环中遍历出来或在Object.keys接口中被列举出来。
(3)configurable属性描述符用于描述该属性是否可删除,如果为false,则任何尝试删除目标属性或修改属性以下特性(包括writable、enumerable和configurable本身)的行为都将被无效化。
由于双向数据绑定要求满足对监听数据的修改和遍历,所以以上三个属性描述符均要设置为true。
6.根据权利要求1所述的方法,其特征在于步骤6)包含两部分内容:(1)重写器(get方法):重写器会在监听数据被读取时被调用,其目的主要在于数据的规范化处理,包括去空格、去回车、去特殊符号、空位补完等。(2)读取器(set方法):当数据修改时,读取器会被调用。读取器被赋予一个能够访问订阅列表的回调方法,当监听数据改变时,主动执行订阅列表中保存的所有求值函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610183393.3A CN105867919A (zh) | 2016-03-28 | 2016-03-28 | 一种基于访问器劫持的前端数据双向绑定实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610183393.3A CN105867919A (zh) | 2016-03-28 | 2016-03-28 | 一种基于访问器劫持的前端数据双向绑定实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105867919A true CN105867919A (zh) | 2016-08-17 |
Family
ID=56626098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610183393.3A Pending CN105867919A (zh) | 2016-03-28 | 2016-03-28 | 一种基于访问器劫持的前端数据双向绑定实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105867919A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446292A (zh) * | 2016-11-16 | 2017-02-22 | 北京集奥聚合科技有限公司 | 一种前端数据双向绑定的实现方法及装置 |
CN106569818A (zh) * | 2016-11-04 | 2017-04-19 | 广东穗阳商务服务股份有限公司 | 一种快速实现MVVM模式的框架BMVVMFramework |
CN107832350A (zh) * | 2017-10-20 | 2018-03-23 | 金蝶软件(中国)有限公司 | 一种web数据双向绑定的方法、装置、终端及存储介质 |
CN108133137A (zh) * | 2017-12-13 | 2018-06-08 | 北京奇虎科技有限公司 | 智能终端中的界面安全性检测方法和装置 |
CN109753273A (zh) * | 2017-11-06 | 2019-05-14 | 芜湖美的厨卫电器制造有限公司 | 基于mvvm框架的物联网应用开发方法、装置及其设备 |
CN111124712A (zh) * | 2019-12-20 | 2020-05-08 | 北京奇艺世纪科技有限公司 | 一种事件通知方法、装置、服务器及存储介质 |
CN111352672A (zh) * | 2018-12-24 | 2020-06-30 | 北京微播视界科技有限公司 | 页面的同步方法、装置、电子设备及计算机可读存储介质 |
CN111580830A (zh) * | 2020-05-12 | 2020-08-25 | 北京飞漫软件技术有限公司 | 超文本标记语言文档元素的绑定及解析方法 |
CN112486551A (zh) * | 2020-11-26 | 2021-03-12 | 四川长虹电器股份有限公司 | 一种小程序全局实时组件的实现方法 |
CN113138826A (zh) * | 2021-04-28 | 2021-07-20 | 深圳软牛科技有限公司 | 一种基于树结构的数据加载方法和相关设备 |
CN113296758A (zh) * | 2021-03-15 | 2021-08-24 | 上海爱数信息技术股份有限公司 | 一种前端组件库构建方法、装置及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001290804A (ja) * | 2000-04-10 | 2001-10-19 | Just Syst Corp | 文書処理方法、文書処理装置、および記録媒体 |
CN104731594A (zh) * | 2015-03-26 | 2015-06-24 | 浪潮集团有限公司 | 一种基于Bootstrap显示运行时定制页面的方法 |
-
2016
- 2016-03-28 CN CN201610183393.3A patent/CN105867919A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001290804A (ja) * | 2000-04-10 | 2001-10-19 | Just Syst Corp | 文書処理方法、文書処理装置、および記録媒体 |
CN104731594A (zh) * | 2015-03-26 | 2015-06-24 | 浪潮集团有限公司 | 一种基于Bootstrap显示运行时定制页面的方法 |
Non-Patent Citations (3)
Title |
---|
司徒正美: "迷你MVVM框架 avalonjs 入门教程", 《HTTPS://WWW.CNBLOGS.COM/RUBYLOUVRE/P/3181291.HTML#TOP6》 * |
尤雨溪: "Vue.js:轻量高效的前端组件化方案", 《HTTPS://WWW.CSDN.NET/ARTICLE/1970-01-01/2825439?T=1493908625171》 * |
脚本之家: "JavaScript对象的property属性详解", 《HTTPS://WWW.JB51.NET/ARTICLE/48594.HTM》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106569818A (zh) * | 2016-11-04 | 2017-04-19 | 广东穗阳商务服务股份有限公司 | 一种快速实现MVVM模式的框架BMVVMFramework |
CN106446292B (zh) * | 2016-11-16 | 2019-11-05 | 北京集奥聚合科技有限公司 | 一种前端数据双向绑定的实现方法及装置 |
CN106446292A (zh) * | 2016-11-16 | 2017-02-22 | 北京集奥聚合科技有限公司 | 一种前端数据双向绑定的实现方法及装置 |
CN107832350A (zh) * | 2017-10-20 | 2018-03-23 | 金蝶软件(中国)有限公司 | 一种web数据双向绑定的方法、装置、终端及存储介质 |
CN107832350B (zh) * | 2017-10-20 | 2021-02-02 | 金蝶软件(中国)有限公司 | 一种web数据双向绑定的方法、装置、终端及存储介质 |
CN109753273A (zh) * | 2017-11-06 | 2019-05-14 | 芜湖美的厨卫电器制造有限公司 | 基于mvvm框架的物联网应用开发方法、装置及其设备 |
CN108133137B (zh) * | 2017-12-13 | 2021-11-23 | 北京奇虎科技有限公司 | 智能终端中的界面安全性检测方法和装置 |
CN108133137A (zh) * | 2017-12-13 | 2018-06-08 | 北京奇虎科技有限公司 | 智能终端中的界面安全性检测方法和装置 |
CN111352672A (zh) * | 2018-12-24 | 2020-06-30 | 北京微播视界科技有限公司 | 页面的同步方法、装置、电子设备及计算机可读存储介质 |
CN111124712A (zh) * | 2019-12-20 | 2020-05-08 | 北京奇艺世纪科技有限公司 | 一种事件通知方法、装置、服务器及存储介质 |
CN111580830A (zh) * | 2020-05-12 | 2020-08-25 | 北京飞漫软件技术有限公司 | 超文本标记语言文档元素的绑定及解析方法 |
CN111580830B (zh) * | 2020-05-12 | 2023-09-15 | 北京飞漫软件技术有限公司 | 超文本标记语言文档元素的绑定及解析方法 |
CN112486551A (zh) * | 2020-11-26 | 2021-03-12 | 四川长虹电器股份有限公司 | 一种小程序全局实时组件的实现方法 |
CN112486551B (zh) * | 2020-11-26 | 2022-02-01 | 四川长虹电器股份有限公司 | 一种小程序全局实时组件的实现方法 |
CN113296758A (zh) * | 2021-03-15 | 2021-08-24 | 上海爱数信息技术股份有限公司 | 一种前端组件库构建方法、装置及存储介质 |
CN113138826A (zh) * | 2021-04-28 | 2021-07-20 | 深圳软牛科技有限公司 | 一种基于树结构的数据加载方法和相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105867919A (zh) | 一种基于访问器劫持的前端数据双向绑定实现方法 | |
US11403364B2 (en) | Method and terminal device for extracting web page content | |
CN101997927B (zh) | 一种web平台数据缓存的方法和系统 | |
CN107766309B (zh) | 数据表格生成方法、装置以及存储介质、电子装置 | |
CN104216691B (zh) | 一种创建应用的方法及装置 | |
CN102129364B (zh) | 应用程序中嵌入微件工具栏的方法和快速访问微件的方法 | |
CN106484412A (zh) | 一种基于访问器劫持的前端数据双向绑定实现方法 | |
US20130339840A1 (en) | System and method for logical chunking and restructuring websites | |
CN104217036B (zh) | 一种网页内容提取方法和设备 | |
CN101751476A (zh) | 电子书签标记方法和装置 | |
CN103279455B (zh) | 电子表格的样式处理方法和装置 | |
CN103577171B (zh) | 一种显示网页内容的方法和移动终端 | |
CN103365877B (zh) | 对网页进行转码后建立目录的方法以及服务器 | |
CN103019557B (zh) | 页面切换方法和装置 | |
US10755091B2 (en) | Method and apparatus for retrieving image-text block from web page | |
EP2933731A1 (en) | Method for configuring browser bookmarks, device and terminal thereof | |
CN103744845A (zh) | 一种web平台数据缓存的方法和系统 | |
CN103810173A (zh) | 分页数据处理方法和系统 | |
CN104090869B (zh) | 一种翻译网络信息的方法及翻译系统 | |
CN105740355B (zh) | 基于聚集文本密度的网页正文提取方法及装置 | |
US9015165B1 (en) | Text-SQL relational database | |
CN109240664A (zh) | 一种采集用户行为信息的方法及终端 | |
CN103440114B (zh) | 一种基于Web架构的三维井身轨迹显示系统 | |
CN107885840A (zh) | 城市信息模型服务方法及系统 | |
CN109086515B (zh) | 基于svg的智能变电站ssd中一次设备绘图信息的建模方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160817 |
|
WD01 | Invention patent application deemed withdrawn after publication |