本公開涉及計算機(jī),更具體地,涉及一種頁面處理方法、裝置、電子設(shè)備和存儲介質(zhì)。
背景技術(shù):
1、隨著前端應(yīng)用的發(fā)展,前端應(yīng)用體積逐漸增大,其部署編譯時長也隨之增長,為解決該問題,相關(guān)技術(shù)中提出了微前端方案,即將前端應(yīng)用拆分為多個子應(yīng)用,再將拆分得到的多個子應(yīng)用聚合到一個入口,即基座應(yīng)用中。
2、在實現(xiàn)本公開構(gòu)思的過程中,發(fā)明人發(fā)現(xiàn)相關(guān)技術(shù)中至少存在如下問題:相關(guān)技術(shù)中基座應(yīng)用的地址一般由路由隨機(jī)編碼生成,與子應(yīng)用真實地址無關(guān),使得其他設(shè)備無法通過相同的地址來打開同一子應(yīng)用,使得微前端的可用性較差。
技術(shù)實現(xiàn)思路
1、有鑒于此,本公開提供了一種頁面處理方法、裝置、電子設(shè)備、可讀存儲介質(zhì)和計算機(jī)程序產(chǎn)品。
2、本公開的一個方面提供了一種頁面處理方法,包括:響應(yīng)于接收跨域通信消息,基于上述跨域通信消息包括的目標(biāo)子應(yīng)用編碼,從路由表中確定與上述跨域通信消息對應(yīng)的目標(biāo)路由記錄;基于上述目標(biāo)路由記錄,得到第一網(wǎng)頁地址;基于上述第一網(wǎng)頁地址,確定與上述跨域通信消息關(guān)聯(lián)的目標(biāo)標(biāo)簽頁面;以及基于上述跨域通信消息的消息類型,處理上述目標(biāo)標(biāo)簽頁面。
3、根據(jù)本公開的實施例,上述基于上述第一網(wǎng)頁地址,確定與上述跨域通信消息關(guān)聯(lián)的目標(biāo)標(biāo)簽頁面,包括:對上述第一網(wǎng)頁地址進(jìn)行摘要計算,得到摘要值;以及基于上述摘要值,確定上述目標(biāo)標(biāo)簽頁面。
4、根據(jù)本公開的實施例,上述基于上述摘要值,確定上述目標(biāo)標(biāo)簽頁面,包括:利用與標(biāo)簽欄包括的至少一個標(biāo)簽頁面各自對應(yīng)的至少一個微前端組件的組件名稱,分別和上述摘要值進(jìn)行比較,得到比較結(jié)果;以及在上述比較結(jié)果表示上述摘要值與第一微前端組件的組件名稱一致的情況下,確定與上述第一微前端組件對應(yīng)的標(biāo)簽頁面為上述目標(biāo)標(biāo)簽頁面。
5、根據(jù)本公開的實施例,上述跨域通信消息的消息類型包括打開標(biāo)簽類型;其中,上述基于上述跨域通信消息的消息類型,處理上述目標(biāo)標(biāo)簽頁面,包括:在上述跨域通信消息的消息類型為上述打開標(biāo)簽類型的情況下,運(yùn)行上述第一微前端組件,跳轉(zhuǎn)至上述目標(biāo)標(biāo)簽頁面,并展示目標(biāo)頁面。
6、根據(jù)本公開的實施例,上述方法還包括:在上述比較結(jié)果表示上述摘要值與上述至少一個微前端組件的組件名稱均不一致的情況下,基于上述跨域通信消息的消息內(nèi)容,創(chuàng)建上述目標(biāo)標(biāo)簽頁面。
7、根據(jù)本公開的實施例,上述基于上述跨域通信消息的消息類型,處理上述目標(biāo)標(biāo)簽頁面,包括:以上述摘要值為組件名稱,以上述第一網(wǎng)頁地址為訪問地址,基于組件模板來生成第二微前端組件;以及將上述第二微前端組件進(jìn)行注冊,以運(yùn)行上述第二微前端組件,在上述目標(biāo)標(biāo)簽頁面中打開上述目標(biāo)頁面。
8、根據(jù)本公開的實施例,上述基于上述跨域通信消息的消息內(nèi)容,創(chuàng)建上述目標(biāo)標(biāo)簽頁面,包括:基于預(yù)設(shè)域名和上述跨域通信消息的消息內(nèi)容,生成第二網(wǎng)頁地址;以及基于上述第二網(wǎng)頁地址,創(chuàng)建上述目標(biāo)標(biāo)簽頁面。
9、根據(jù)本公開的實施例,上述跨域通信消息的消息類型包括關(guān)閉標(biāo)簽類型;其中,上述基于上述跨域通信消息的消息類型,處理上述目標(biāo)標(biāo)簽頁面,包括:在上述跨域通信消息的消息類型為上述關(guān)閉標(biāo)簽類型的情況下,關(guān)閉上述第一微前端組件,以關(guān)閉上述目標(biāo)標(biāo)簽頁面。
10、根據(jù)本公開的實施例,上述方法還包括:響應(yīng)于接收上述跨域通信消息,利用路由表,基于上述跨域通信消息的消息內(nèi)容進(jìn)行訪問權(quán)限驗證;以及在確定具有訪問權(quán)限的情況下,基于上述跨域通信消息包括的目標(biāo)子應(yīng)用編碼,從路由表中確定與上述跨域通信消息對應(yīng)的目標(biāo)路由記錄。
11、根據(jù)本公開的實施例,上述利用路由表,基于上述跨域通信消息的消息內(nèi)容進(jìn)行訪問權(quán)限驗證,包括:將上述跨域通信消息的消息內(nèi)容依次與上述路由表包括的多條路由記錄進(jìn)行匹配,得到匹配結(jié)果;以及在上述匹配結(jié)果表示上述跨域通信消息的消息內(nèi)容與上述多條路由記錄中的上述目標(biāo)路由記錄相匹配的情況下,確定具有訪問權(quán)限。
12、根據(jù)本公開的實施例,上述方法還包括:在上述匹配結(jié)果表示上述跨域通信消息的消息內(nèi)容與上述多條路由記錄均不匹配的情況下,確定不具有訪問權(quán)限;以及在確定不具有訪問權(quán)限的情況下,在當(dāng)前標(biāo)簽頁面中打開預(yù)設(shè)頁面。
13、根據(jù)本公開的實施例,上述基于上述目標(biāo)路由記錄,得到第一網(wǎng)頁地址,包括:解析上述目標(biāo)路由記錄,得到目標(biāo)域名和目標(biāo)路徑參數(shù)信息;以及基于上述目標(biāo)域名和上述目標(biāo)路徑參數(shù)信息,得到上述第一網(wǎng)頁地址。
14、根據(jù)本公開的實施例,上述方法還包括:調(diào)用菜單權(quán)限系統(tǒng)接口,得到菜單樹;以及將上述菜單樹包括的多個子項在全局路由中進(jìn)行注冊,得到上述路由表。
15、根據(jù)本公開的實施例,上述將上述菜單樹包括的多個子項在全局路由中進(jìn)行注冊,得到上述路由表,包括:分別對上述多個子項各自的網(wǎng)頁地址進(jìn)行解析,得到上述多個子項各自的子應(yīng)用編碼和路徑參數(shù)信息;對于每個子項,將上述子項的子應(yīng)用編碼和路徑參數(shù)信息在全局路由中進(jìn)行注冊,得到上述子項的路由記錄;以及將上述多個子項各自的路由路徑寫入初始路由表中,得到上述路由表。
16、本公開的另一個方面提供了一種頁面處理裝置,包括:第一確定模塊,用于響應(yīng)于接收跨域通信消息,基于上述跨域通信消息包括的目標(biāo)子應(yīng)用編碼,從路由表中確定與上述跨域通信消息對應(yīng)的目標(biāo)路由記錄;第一處理模塊,用于基于上述目標(biāo)路由記錄,得到第一網(wǎng)頁地址;第二確定模塊,用于基于上述第一網(wǎng)頁地址,確定與上述跨域通信消息關(guān)聯(lián)的目標(biāo)標(biāo)簽頁面;以及第二處理模塊,用于基于上述跨域通信消息的消息類型,處理上述目標(biāo)標(biāo)簽頁面。
17、本公開的另一方面提供了一種電子設(shè)備,包括:一個或多個處理器;存儲器,用于存儲一個或多個指令,其中,當(dāng)上述一個或多個指令被上述一個或多個處理器執(zhí)行時,使得上述一個或多個處理器實現(xiàn)如上所述的方法。
18、本公開的另一方面提供了一種計算機(jī)可讀存儲介質(zhì),存儲有計算機(jī)可執(zhí)行指令,上述指令在被執(zhí)行時用于實現(xiàn)如上所述的方法。
19、本公開的另一方面提供了一種計算機(jī)程序產(chǎn)品,上述計算機(jī)程序產(chǎn)品包括計算機(jī)可執(zhí)行指令,上述指令在被執(zhí)行時用于實現(xiàn)如上所述的方法。
20、根據(jù)本公開的實施例,基座應(yīng)用中輸入的網(wǎng)頁地址可以轉(zhuǎn)換為跨域通信消息?;蛘?,用戶在任意標(biāo)簽頁面中點(diǎn)擊按鈕,與該按鈕對應(yīng)的鏈接可以轉(zhuǎn)換為跨域通信消息??梢詮穆酚杀碇写_定與跨域通信消息的消息內(nèi)容匹配的目標(biāo)路由記錄,再根據(jù)目標(biāo)路由記錄和跨域通信消息包括的目標(biāo)子應(yīng)用編碼,可以確定第一網(wǎng)頁地址,即子應(yīng)用實際使用的網(wǎng)頁地址。之后可以通過新建、匹配等方式確定目標(biāo)標(biāo)簽頁面,并根據(jù)跨域通信消息的消息類型對目標(biāo)標(biāo)簽頁面執(zhí)行相應(yīng)操作。通過路由表,可以實現(xiàn)解析跨域通信消息來得到第一網(wǎng)頁地址,可以至少部分地克服相關(guān)技術(shù)中存在的路由分發(fā)問題,從而有效提升微前端框架的可用性。
1.一種頁面處理方法,包括:
2.根據(jù)權(quán)利要求1所述的方法,其中,所述基于所述第一網(wǎng)頁地址,確定與所述跨域通信消息關(guān)聯(lián)的目標(biāo)標(biāo)簽頁面,包括:
3.根據(jù)權(quán)利要求2所述的方法,其中,所述基于所述摘要值,確定所述目標(biāo)標(biāo)簽頁面,包括:
4.根據(jù)權(quán)利要求3所述的方法,其中,所述跨域通信消息的消息類型包括打開標(biāo)簽類型;
5.根據(jù)權(quán)利要求4所述的方法,還包括:
6.根據(jù)權(quán)利要求5所述的方法,其中,所述基于所述跨域通信消息的消息類型,處理所述目標(biāo)標(biāo)簽頁面,包括:
7.根據(jù)權(quán)利要求5所述的方法,其中,所述基于所述跨域通信消息的消息內(nèi)容,創(chuàng)建所述目標(biāo)標(biāo)簽頁面,包括:
8.根據(jù)權(quán)利要求3所述的方法,其中,所述跨域通信消息的消息類型包括關(guān)閉標(biāo)簽類型;
9.根據(jù)權(quán)利要求1所述的方法,還包括:
10.根據(jù)權(quán)利要求9所述的方法,其中,所述利用路由表,基于所述跨域通信消息的消息內(nèi)容進(jìn)行訪問權(quán)限驗證,包括:
11.根據(jù)權(quán)利要求10所述的方法,還包括:
12.根據(jù)權(quán)利要求1所述的方法,其中,所述基于所述目標(biāo)路由記錄,得到第一網(wǎng)頁地址,包括:
13.根據(jù)權(quán)利要求1~12中任一項所述的方法,還包括:
14.根據(jù)權(quán)利要求13所述的方法,其中,所述將所述菜單樹包括的多個子項在全局路由中進(jìn)行注冊,得到所述路由表,包括:
15.一種頁面處理裝置,包括:
16.一種電子設(shè)備,包括:
17.一種計算機(jī)可讀存儲介質(zhì),其上存儲有可執(zhí)行指令,所述可執(zhí)行指令被處理器執(zhí)行時使處理器實現(xiàn)權(quán)利要求1至14中任一項所述的方法。
18.一種計算機(jī)程序產(chǎn)品,所述計算機(jī)程序產(chǎn)品包括計算機(jī)可執(zhí)行指令,所述計算機(jī)可執(zhí)行指令在被執(zhí)行時用于實現(xiàn)權(quán)利要求1至14中任一項所述的方法。