[發明專利]基于對象的同步更新方法、裝置、存儲介質及設備有效
| 申請號: | 201810593226.5 | 申請日: | 2018-06-11 |
| 公開(公告)號: | CN108845856B | 公開(公告)日: | 2021-12-14 |
| 發明(設計)人: | 鄭欽洪 | 申請(專利權)人: | 騰訊科技(深圳)有限公司 |
| 主分類號: | G06F9/451 | 分類號: | G06F9/451 |
| 代理公司: | 北京三高永信知識產權代理有限責任公司 11138 | 代理人: | 張所明 |
| 地址: | 518057 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 對象 同步 更新 方法 裝置 存儲 介質 設備 | ||
本發明公開了一種數據綁定方法、裝置、存儲介質及設備,屬于網絡技術領域。方法包括:獲取第一軟件部件的至少一個被監聽對象,第一軟件部件為視圖或者數據模型,被監聽對象為視圖元素或數據模型的數據參數;確定至少一個被監聽對象與同一個功能關聯,將至少一個被監聽對象與同一個監聽對象綁定;確定所述至少一個被監聽對象中存在屬性數據發生更新的被監聽對象,向監聽對象發送通知消息,該通知消息中攜帶更新后的屬性數據;調用監聽對象,基于更新后的屬性數據,對與第一軟件部件存在邏輯關聯的第二軟件部件進行同步更新。本發明將多個被監聽對象與同一個監聽對象綁定,實現了統一監聽,在代碼實現上可有效減少代碼冗余,極大地提高了開發效率。
技術領域
本發明涉及網絡技術領域,特別涉及一種數據綁定方法、裝置、存儲介質及設備。
背景技術
數據綁定(Data Binding),是一種將提供者(provider)與消費者(consumer)進行關聯并使其數據同步的技術。在UI(User Interface,用戶界面)領域中,提供者和消費者涉及視圖(View)和數據模型(Model),以雙向綁定為例,視圖和數據模型既為提供者也為消費者,即在雙向綁定中,視圖的變化能夠實時讓數據模型發生變化,而數據模型的變化也能夠實時讓視圖發生變化。
以視圖變化使得數據模型同步發生變化為例,相關技術在UI領域實現雙向綁定時,通常是對視圖的每個被監聽對象的屬性變化進行單獨監聽,即一個被監聽對象綁定一個監聽對象,當一個被監聽對象的屬性變化時,與其綁定的監聽對象會將該屬性變化同步更新至數據模型。
由于相關技術對視圖的各個被監聽對象的屬性變化進行單獨監聽,所以在代碼實現上存在代碼冗余的缺陷,會致使開發效率較低。
發明內容
本發明實施例提供了一種數據綁定方法、裝置、存儲介質及設備,解決了相關技術存在的開發效率較低的問題。所述技術方案如下:
一方面,提供了一種數據綁定方法,所述方法包括:
獲取第一軟件部件的至少一個被監聽對象,所述第一軟件部件為視圖或者數據模型,所述被監聽對象為所述視圖的視圖元素或所述數據模型的數據參數;
確定所述至少一個被監聽對象與同一個功能關聯,將所述至少一個被監聽對象與同一個監聽對象綁定;
確定所述至少一個被監聽對象中存在屬性數據發生更新的被監聽對象,向所述監聽對象發送通知消息,所述通知消息中攜帶更新后的屬性數據;
調用所述監聽對象,基于所述更新后的屬性數據,對與所述第一軟件部件存在邏輯關聯的第二軟件部件進行同步更新。
另一方面,提供了一種數據綁定裝置,所述裝置包括:
獲取模塊,用于獲取第一軟件部件的至少一個被監聽對象,所述第一軟件部件為視圖或者數據模型,所述被監聽對象為所述視圖的視圖元素或所述數據模型的數據參數;
第一處理模塊,用于當所述至少一個被監聽對象與同一個功能關聯時,將所述至少一個被監聽對象與同一個監聽對象綁定;
第二處理模塊,用于確定所述至少一個被監聽對象中存在屬性數據發生更新的被監聽對象,向所述監聽對象發送通知消息,所述通知消息中攜帶更新后的屬性數據;
更新模塊,用于調用所述監聽對象,基于所述更新后的屬性數據,對與所述第一軟件部件存在邏輯關聯的第二軟件部件進行同步更新。
另一方面,提供了一種數據綁定方法,所述方法包括:
獲取視圖的至少一個被監聽對象,所述被監聽對象為所述視圖的視圖元素;
確定所述至少一個被監聽對象與同一個功能關聯,將所述至少一個被監聽對象與同一個監聽對象綁定;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于騰訊科技(深圳)有限公司,未經騰訊科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810593226.5/2.html,轉載請聲明來源鉆瓜專利網。





