[發(fā)明專利]一種web數(shù)據(jù)雙向綁定的方法、裝置、終端及存儲介質(zhì)有效
| 申請?zhí)枺?/td> | 201710986260.4 | 申請日: | 2017-10-20 |
| 公開(公告)號: | CN107832350B | 公開(公告)日: | 2021-02-02 |
| 發(fā)明(設(shè)計)人: | 梁洪波;高詩杰 | 申請(專利權(quán))人: | 金蝶軟件(中國)有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F9/448 |
| 代理公司: | 深圳市深佳知識產(chǎn)權(quán)代理事務(wù)所(普通合伙) 44285 | 代理人: | 王仲凱 |
| 地址: | 518057 廣東省深圳市南山區(qū)*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 web 數(shù)據(jù) 雙向 綁定 方法 裝置 終端 存儲 介質(zhì) | ||
本申請公開了一種web數(shù)據(jù)雙向綁定的方法,包括:當(dāng)監(jiān)聽程序監(jiān)聽到數(shù)據(jù)實體發(fā)生變化時,將該變化發(fā)送至訂閱程序;訂閱程序根據(jù)該變化發(fā)送視圖更新指令至更新程序;更新程序根據(jù)該視圖更新指令調(diào)用視圖更新函數(shù)更新視圖;當(dāng)視圖根據(jù)接收到用戶輸入的修改指令進(jìn)行修改時,訂閱程序調(diào)用實體更改函數(shù)更改數(shù)據(jù)實體。該方法先通過繼承基類的方式構(gòu)建數(shù)據(jù)實體、監(jiān)聽程序及訂閱程序,并將兩個程序封裝在數(shù)據(jù)實體中,使得每一組數(shù)據(jù)實體和對應(yīng)的視圖都封裝有一組監(jiān)聽程序及訂閱程序,解決了大數(shù)據(jù)量的數(shù)據(jù)雙向綁定時出現(xiàn)的卡頓問題。本申請同時還提供了一種web數(shù)據(jù)雙向綁定的裝置、終端、計算機(jī)可讀存儲介質(zhì)及計算機(jī)程序產(chǎn)品,具有上述有益效果。
技術(shù)領(lǐng)域
本申請涉及web模型領(lǐng)域,特別涉及一種web數(shù)據(jù)雙向綁定的方法、裝置、終端、計算機(jī)可讀存儲介質(zhì)及計算機(jī)程序產(chǎn)品。
背景技術(shù)
雙向綁定,即數(shù)據(jù)模型(Module)和視圖(View)之間的雙向綁定,具體表現(xiàn)為用戶在視圖上的修改會自動同步到數(shù)據(jù)模型中去,同樣的,如果數(shù)據(jù)模型中的值發(fā)生了變化,也會立刻同步到視圖中去。最經(jīng)常出現(xiàn)的場景就是表單的操作,當(dāng)用戶在前端頁面完成輸入后,不用任何操作,數(shù)據(jù)就已經(jīng)自動存放到數(shù)據(jù)模型中。
現(xiàn)有技術(shù)中通過檢查臟數(shù)據(jù)來進(jìn)行用戶界面(User Interface,UI)層的操作更新,將所有需要進(jìn)行監(jiān)控的數(shù)據(jù)對象放置在一個序列中,當(dāng)發(fā)生某些特定的事件時進(jìn)行觸發(fā),如$digest方法就是遍歷所有的watcher,通過設(shè)置的數(shù)據(jù)去找與該數(shù)據(jù)相關(guān)的所有元素,判斷數(shù)據(jù)是否變化,如果變化則執(zhí)行指令;還有一種數(shù)據(jù)劫持的方法,利用瀏覽程序提供的接口object.defineProperty,來劫持各個屬性的設(shè)置程序和訪問程序,在數(shù)據(jù)變動時,發(fā)布消息給訂閱者,觸發(fā)相應(yīng)的回調(diào)。
然而,臟檢查需要構(gòu)建所有的相關(guān)元素的序列,當(dāng)數(shù)據(jù)或者元素發(fā)生變化的時候,需要遍歷所有的元素,尤其是在處理大數(shù)據(jù)量的數(shù)據(jù)時,很容易造成頁面的卡頓,同時不斷的循環(huán)訪問一個隊列,非常損耗性能。而數(shù)據(jù)劫持的方法在處理大數(shù)據(jù)量的數(shù)據(jù)時,通過瀏覽程序提供的接口來劫持各個屬性的設(shè)置程序和訪問程序時,也會造成頁面的卡頓。
因此,如何解決大數(shù)據(jù)量的數(shù)據(jù)雙向綁定時出現(xiàn)的卡頓問題是本領(lǐng)域技術(shù)人員目前需要解決的技術(shù)問題。
發(fā)明內(nèi)容
本申請的目的是提供一種web數(shù)據(jù)雙向綁定的方法、裝置、終端、計算機(jī)可讀存儲介質(zhì)及計算機(jī)程序產(chǎn)品,該方法能夠解決解決大數(shù)據(jù)量的數(shù)據(jù)雙向綁定時出現(xiàn)的卡頓問題。
為解決上述技術(shù)問題,本申請?zhí)峁┮环Nweb數(shù)據(jù)雙向綁定的方法,該方法包括:
當(dāng)監(jiān)聽程序監(jiān)聽到數(shù)據(jù)實體發(fā)生變化時,將所述變化發(fā)送至訂閱程序;
所述訂閱程序根據(jù)所述變化發(fā)送視圖更新指令至更新程序;
所述更新程序根據(jù)所述視圖更新指令調(diào)用視圖更新函數(shù)更新視圖;
當(dāng)視圖根據(jù)接收到用戶輸入的修改指令進(jìn)行修改時,所述訂閱程序根據(jù)所述修改指令調(diào)用實體更改函數(shù)更改所述數(shù)據(jù)實體;
其中,所述數(shù)據(jù)實體為通過繼承實體基類而構(gòu)建的;所述監(jiān)聽程序及所述訂閱程序為通過繼承moduleview基類而構(gòu)建的,且封裝在所述數(shù)據(jù)實體中。
可選的,將所述變化發(fā)送至訂閱程序,包括:
所述監(jiān)聽程序?qū)⑺鲎兓l(fā)送至校驗程序;
所述校驗程序判斷訂閱列表中是否存在所述訂閱程序;
若是,則所述校驗程序?qū)⑺鲎兓l(fā)送至所述訂閱程序。
可選的,該方法還包括:
當(dāng)所述訂閱程序接收到指令解析程序發(fā)送的新實體更改函數(shù)時,將所述實體更改函數(shù)替換為所述新實體更改函數(shù);
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于金蝶軟件(中國)有限公司,未經(jīng)金蝶軟件(中國)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710986260.4/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 提供共享Web模塊的系統(tǒng)和方法
- 管理環(huán)球網(wǎng)網(wǎng)頁中的環(huán)球網(wǎng)媒體的系統(tǒng)及其實現(xiàn)方法
- 一種WEB業(yè)務(wù)實現(xiàn)系統(tǒng)、裝置及方法
- 高速緩存廣播信息的方法和裝置
- 基于QoS指標(biāo)和Web服務(wù)輸出參數(shù)的Web服務(wù)組合方法和裝置
- Web托管審查方法、裝置及Web托管系統(tǒng)
- 用于信息處理和Web瀏覽歷史導(dǎo)航的方法和設(shè)備及電子裝置
- 用于將web站點轉(zhuǎn)換為目標(biāo)web app站點的方法和裝置
- 用于防護(hù)WEB漏洞的方法和設(shè)備
- 一種Web攻擊報告生成方法、裝置、設(shè)備及計算機(jī)介質(zhì)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





