本發(fā)明涉及計算機,特別是涉及一種對話框的顯示方法、裝置、電子設(shè)備及可讀存儲介質(zhì)。
背景技術(shù):
1、目前,web(萬維網(wǎng))頁面或應(yīng)用程序的頁面在接收到某些事件時,會在頁面中顯示對話框。例如,用戶在頁面中點擊了某一商品的購買按鈕,可以彈出一個購買確認(rèn)對話框,用于提醒用戶確認(rèn)是否購買該商品,進而根據(jù)用戶與該對話框進行交互情況,能夠確認(rèn)用戶是否購買該商品。在確認(rèn)購買的情況下,則可以根據(jù)該確認(rèn)購買的信息執(zhí)行后續(xù)處理,同時關(guān)閉該對話框;在確認(rèn)不購買的情況下,則可以直接關(guān)閉該對話框,而無需執(zhí)行其他后續(xù)操作。
2、相關(guān)技術(shù)中,針對頁面中可能會展示的各個對話框,都需要分別設(shè)置一個狀態(tài)變量,以管理對話框的狀態(tài),以在該狀態(tài)變量表示打開狀態(tài)時,觸發(fā)對應(yīng)的對話框的顯示,以及在該狀態(tài)變量表示關(guān)閉狀態(tài)時,觸發(fā)對應(yīng)的對話框的關(guān)閉??梢姡?dāng)對話框的數(shù)量較多時,狀態(tài)變量的數(shù)量也會隨之變多,這就加重了頁面開發(fā)過程中代碼冗余的問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明實施例的目的在于提供一種對話框的顯示方法、裝置、電子設(shè)備及可讀存儲介質(zhì),以減少頁面開發(fā)過程中代碼冗余。具體技術(shù)方案如下:
2、在本發(fā)明實施的一個方面,首先提供了一種對話框的顯示方法,所述方法包括:
3、當(dāng)檢測到目標(biāo)頁面的對話框打開事件時,獲取該對話框打開事件對應(yīng)的對話框標(biāo)識,作為目標(biāo)標(biāo)識;
4、創(chuàng)建所述目標(biāo)標(biāo)識對應(yīng)的對話框?qū)嵗?,以顯示對應(yīng)的對話框;其中,每一對話框?qū)嵗糜阡N毀該對話框?qū)嵗牡谝缓瘮?shù);
5、創(chuàng)建用于處理異步操作任務(wù)的預(yù)設(shè)對象;其中,所述預(yù)設(shè)對象包含:用于在所述預(yù)設(shè)對象處于結(jié)束狀態(tài)時執(zhí)行的第二函數(shù);所述第二函數(shù)與所述第一函數(shù)相綁定;
6、將所述預(yù)設(shè)對象中的用于變更對象狀態(tài)的第三函數(shù)注入所述目標(biāo)標(biāo)識對應(yīng)的對話框?qū)嵗?/p>
7、當(dāng)檢測到針對所顯示的對話框的關(guān)閉操作時,調(diào)用所述第三函數(shù)將所述預(yù)設(shè)對象的狀態(tài)變更為結(jié)束狀態(tài),以觸發(fā)所述第二函數(shù)調(diào)用所述第一函數(shù),實現(xiàn)對所顯示的對話框的關(guān)閉。
8、可選地,所述結(jié)束狀態(tài)包括:表示異步操作任務(wù)執(zhí)行成功的成功狀態(tài),和表示異步操作任務(wù)執(zhí)行失敗的失敗狀態(tài);所述第三函數(shù)包括:用于將所述預(yù)設(shè)對象的狀態(tài)變更為成功狀態(tài),并獲取異步操作任務(wù)執(zhí)行結(jié)果的第四函數(shù);
9、所述當(dāng)檢測到針對所顯示的對話框的關(guān)閉操作時,調(diào)用所述第三函數(shù)將所述預(yù)設(shè)對象的狀態(tài)變更為結(jié)束狀態(tài),包括:
10、當(dāng)檢測到針對所顯示的對話框的關(guān)閉操作時,若該關(guān)閉操作表示用戶需要通過對話框傳遞信息,則調(diào)用所述第四函數(shù)獲取該關(guān)閉操作所傳遞的信息作為異步操作任務(wù)執(zhí)行結(jié)果,以及將所述預(yù)設(shè)對象的狀態(tài)變更為結(jié)束狀態(tài)。
11、可選地,所述結(jié)束狀態(tài)包括:表示異步操作任務(wù)執(zhí)行成功的成功狀態(tài),和表示異步操作任務(wù)執(zhí)行失敗的失敗狀態(tài);所述第三函數(shù)包括:用于將所述預(yù)設(shè)對象的狀態(tài)變更為失敗狀態(tài)的第五函數(shù);所述當(dāng)檢測到針對所顯示的對話框的關(guān)閉操作時,調(diào)用所述第三函數(shù)將所述預(yù)設(shè)對象的狀態(tài)變更為結(jié)束狀態(tài),包括:
12、當(dāng)檢測到針對所顯示的對話框的關(guān)閉操作時,若該關(guān)閉操作表示用戶無需通過對話框傳遞信息,則調(diào)用所述第五函數(shù)將所述預(yù)設(shè)對象的狀態(tài)變更為執(zhí)行失敗狀態(tài)。
13、可選地,所述創(chuàng)建所述目標(biāo)標(biāo)識對應(yīng)的對話框?qū)嵗?,以顯示對應(yīng)的對話框,包括:
14、創(chuàng)建所述目標(biāo)標(biāo)識對應(yīng)的對話框?qū)嵗?/p>
15、將用于獲取對話框打開事件所傳遞參數(shù)的第六函數(shù)注入所述目標(biāo)標(biāo)識對應(yīng)的對話框?qū)嵗?/p>
16、調(diào)用所述第六函數(shù)獲取該對話框打開事件所傳遞的參數(shù),以顯示包含所獲取的參數(shù)的對話框。
17、可選地,所述方法還包括:
18、在目標(biāo)標(biāo)識對應(yīng)的對話框處于顯示狀態(tài)時,調(diào)用預(yù)設(shè)的頁面滑動禁止函數(shù),停止所述目標(biāo)頁面的頁面滑動功能;
19、在目標(biāo)標(biāo)識對應(yīng)的對話框被關(guān)閉時,調(diào)用預(yù)設(shè)的頁面滑動恢復(fù)函數(shù),以恢復(fù)所述目標(biāo)頁面的頁面滑動功能。
20、在本發(fā)明實施的另一方面,還提供了一種對話框的顯示裝置,所述裝置包括:
21、標(biāo)識獲取模塊,用于當(dāng)檢測到目標(biāo)頁面的對話框打開事件時,獲取該對話框打開事件對應(yīng)的對話框標(biāo)識,作為目標(biāo)標(biāo)識;
22、對話框創(chuàng)建模塊,用于創(chuàng)建所述目標(biāo)標(biāo)識對應(yīng)的對話框?qū)嵗燥@示對應(yīng)的對話框;其中,每一對話框?qū)嵗糜阡N毀該對話框?qū)嵗牡谝缓瘮?shù);
23、對象創(chuàng)建模塊,用于創(chuàng)建用于處理異步操作任務(wù)的預(yù)設(shè)對象;其中,所述預(yù)設(shè)對象包含:用于在所述預(yù)設(shè)對象處于結(jié)束狀態(tài)時執(zhí)行的第二函數(shù);所述第二函數(shù)與所述第一函數(shù)相綁定;
24、注入模塊,用于將所述預(yù)設(shè)對象中的用于變更對象狀態(tài)的第三函數(shù)注入所述目標(biāo)標(biāo)識對應(yīng)的對話框?qū)嵗?/p>
25、關(guān)閉模塊,用于當(dāng)檢測到針對所顯示的對話框的關(guān)閉操作時,調(diào)用所述第三函數(shù)將所述預(yù)設(shè)對象的狀態(tài)變更為結(jié)束狀態(tài),以觸發(fā)所述第二函數(shù)調(diào)用所述第一函數(shù),實現(xiàn)對所顯示的對話框的關(guān)閉。
26、可選地,所述結(jié)束狀態(tài)包括:表示異步操作任務(wù)執(zhí)行成功的成功狀態(tài),和表示異步操作任務(wù)執(zhí)行失敗的失敗狀態(tài);所述第三函數(shù)包括:用于將所述預(yù)設(shè)對象的狀態(tài)變更為成功狀態(tài),并獲取異步操作任務(wù)執(zhí)行結(jié)果的第四函數(shù);
27、所述關(guān)閉模塊,具體用于:
28、當(dāng)檢測到針對所顯示的對話框的關(guān)閉操作時,若該關(guān)閉操作表示用戶需要通過對話框傳遞信息,則調(diào)用所述第四函數(shù)獲取該關(guān)閉操作所傳遞的信息作為異步操作任務(wù)執(zhí)行結(jié)果,以及將所述預(yù)設(shè)對象的狀態(tài)變更為結(jié)束狀態(tài)。
29、在本發(fā)明實施的又一方面,還提供了一種電子設(shè)備,包括處理器、通信接口、存儲器和通信總線,其中,處理器,通信接口,存儲器通過通信總線完成相互間的通信;
30、存儲器,用于存放計算機程序;
31、處理器,用于執(zhí)行存儲器上所存放的程序時,實現(xiàn)上述任一所述的對話框的顯示方法。
32、在本發(fā)明實施的又一方面,還提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)內(nèi)存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)上述任一所述的對話框的顯示方法。
33、在本發(fā)明實施的又一方面,還提供了一種包含指令的計算機程序產(chǎn)品,當(dāng)其在計算機上運行時,使得計算機執(zhí)行上述任一所述的對話框的顯示方法。
34、本發(fā)明實施例提供的對話框的顯示方法,當(dāng)檢測到目標(biāo)頁面的對話框打開事件時,獲取該對話框打開事件對應(yīng)的對話框標(biāo)識,作為目標(biāo)標(biāo)識,創(chuàng)建對應(yīng)的對話框?qū)嵗?,實現(xiàn)了對話框的顯示;進而創(chuàng)建用于處理異步操作任務(wù)的預(yù)設(shè)對象,該預(yù)設(shè)對象在處于結(jié)束狀態(tài)時會執(zhí)行的第二函數(shù),且第二函數(shù)與用于銷毀該對話框?qū)嵗牡谝缓瘮?shù)相綁定;在此基礎(chǔ)上,將預(yù)設(shè)對象中的用于變更對象狀態(tài)的第三函數(shù)注入該對話框?qū)嵗?,以在檢測到針對所顯示的對話框的關(guān)閉操作時,可以通過調(diào)用第三函數(shù)將預(yù)設(shè)對象的狀態(tài)變更為結(jié)束狀態(tài),以觸發(fā)第二函數(shù)調(diào)用相綁定的第一函數(shù),將所創(chuàng)建的對話框?qū)嵗N毀以實現(xiàn)對所顯示的對話框的關(guān)閉??梢姡痉桨钢?,針對頁面需要打開的任一對話框,可以通過創(chuàng)建對應(yīng)的對話框?qū)嵗龑崿F(xiàn)該對話框的顯示,之后,還可以通過同一個用于處理異步操作任務(wù)的預(yù)設(shè)對象來控制對話框的關(guān)閉,而無需再分別為各個對話框設(shè)置狀態(tài)變量來控制對話框的顯示和關(guān)閉,因此,通過本方案能夠減少頁面開發(fā)過程中的代碼冗余。