本申請(qǐng)涉及通信,尤其涉及一種頁(yè)面展示方法、裝置、電子設(shè)備、介質(zhì)和程序產(chǎn)品。
背景技術(shù):
1、隨著移動(dòng)設(shè)備和瀏覽器的多樣化,前端開發(fā)需要面對(duì)不同設(shè)備和平臺(tái)的適配問(wèn)題,這增加了開發(fā)和維護(hù)的復(fù)雜性。
2、在傳統(tǒng)頁(yè)面展示實(shí)現(xiàn)方案中,主要依賴視口(viewport)等工具實(shí)現(xiàn)展示邏輯,然后進(jìn)行適配,這個(gè)展示過(guò)程是固定的、靜態(tài)的,無(wú)法靈活適配于不同設(shè)備和業(yè)務(wù)場(chǎng)景展示,導(dǎo)致在不同設(shè)備上的展示效果存在差異。
3、因此,本申請(qǐng)?zhí)岢鲆环N頁(yè)面展示方法,以解決以上問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)實(shí)施例一種頁(yè)面展示方法、裝置、電子設(shè)備、介質(zhì)和程序產(chǎn)品,用以解決現(xiàn)有技術(shù)中無(wú)法靈活適配于不同設(shè)備和業(yè)務(wù)場(chǎng)景展示的問(wèn)題。
2、第一方面,本申請(qǐng)?zhí)峁┮环N頁(yè)面展示方法,包括:
3、基于用戶發(fā)起的頁(yè)面展示請(qǐng)求,獲取頁(yè)面展示設(shè)備的設(shè)備類型,其中,所述頁(yè)面展示請(qǐng)求中包括待展示業(yè)務(wù)場(chǎng)景;
4、根據(jù)所述設(shè)備類型獲取所述頁(yè)面展示設(shè)備的展示能力,并根據(jù)所述展示能力獲取所述待展示業(yè)務(wù)場(chǎng)景的目標(biāo)展示元素,其中,所述展示能力包括硬件能力和軟件能力;
5、根據(jù)所述目標(biāo)展示元素建立所述待展示業(yè)務(wù)場(chǎng)景的webassembly模塊,以使所述頁(yè)面展示設(shè)備加載所述webassembly模塊,并渲染展示所述待展示業(yè)務(wù)場(chǎng)景對(duì)應(yīng)的目標(biāo)展示元素。
6、在一種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述展示能力獲取所述待展示業(yè)務(wù)場(chǎng)景的目標(biāo)展示元素,包括:
7、根據(jù)所述展示能力,在多種元素類型中獲取至少一種所述元素類型作為所述目標(biāo)展示元素;其中,
8、所述元素類型包括文字標(biāo)題、文字正文、圖片、邊框、背景和尺寸;所述展示能力中的硬件能力包括硬件算力、顯示器分辨率;所述展示能力中的軟件能力包括軟件算力。
9、在一種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述目標(biāo)展示元素建立所述待展示業(yè)務(wù)場(chǎng)景的webassembly模塊,包括:
10、在建立rust模塊時(shí),載入wasm_bindgen模塊,通過(guò)所述wasm_bindgen模塊標(biāo)記所述rust模塊的渲染函數(shù)的屬性;
11、在建立所述渲染函數(shù)的html變量時(shí),定義html字符串,向所述html字符串插入div標(biāo)簽,解析并遍歷所述待展示業(yè)務(wù)場(chǎng)景的數(shù)據(jù),將遍歷的數(shù)據(jù)構(gòu)建成html代碼,并將所述html代碼插入所述html字符串,向所述html字符串插入結(jié)尾標(biāo)簽;
12、在建立所述渲染函數(shù)的css變量時(shí),構(gòu)建所述目標(biāo)展示元素對(duì)應(yīng)的css樣式代碼;
13、調(diào)用format宏命令,輸出所述html變量和所述css變量,完成所述rust模塊的構(gòu)建,并將構(gòu)建好的所述rust模塊編譯為所述webassembly模塊。
14、在一種可能的實(shí)現(xiàn)方式中,所述以使所述頁(yè)面展示設(shè)備加載所述webassembly模塊,包括:
15、在建立第一異步函數(shù)時(shí),聲明module變量用于保存待加載的所述webassembly模塊;
16、在待加載的所述webassembly模塊中,根據(jù)所述設(shè)備類型獲取目標(biāo)加載的所述webassembly模塊,以完成目標(biāo)加載。
17、在一種可能的實(shí)現(xiàn)方式中,所述渲染展示所述待展示業(yè)務(wù)場(chǎng)景對(duì)應(yīng)的目標(biāo)展示元素,包括:
18、在建立第二異步函數(shù)時(shí),建立等待函數(shù)等待所述第一異步函數(shù)完成目標(biāo)加載;
19、調(diào)用目標(biāo)加載的所述webassembly模塊,并傳入所述待展示業(yè)務(wù)場(chǎng)景的目標(biāo)展示元素;
20、將所述目標(biāo)展示元素在所述頁(yè)面展示設(shè)備的展示點(diǎn)渲染展示。
21、在一種可能的實(shí)現(xiàn)方式中,所述基于用戶發(fā)起的頁(yè)面展示請(qǐng)求,獲取頁(yè)面展示設(shè)備的設(shè)備類型,包括:
22、通過(guò)正則表達(dá)式,確認(rèn)所述頁(yè)面展示請(qǐng)求中的用戶代理字符串中是否存在表示所述設(shè)備類型的字符;
23、若存在表示所述設(shè)備類型的字符,則根據(jù)所述字符確認(rèn)所述頁(yè)面展示設(shè)備的設(shè)備類型,其中,不同所述字符分別用于表示移動(dòng)設(shè)備類型、桌面設(shè)備類型。
24、第二方面,本申請(qǐng)?zhí)峁┮环N頁(yè)面展示裝置,包括:
25、獲取模塊,用于基于用戶發(fā)起的頁(yè)面展示請(qǐng)求,獲取頁(yè)面展示設(shè)備的設(shè)備類型,其中,所述頁(yè)面展示請(qǐng)求中包括待展示業(yè)務(wù)場(chǎng)景;
26、處理模塊,用于根據(jù)所述設(shè)備類型獲取所述頁(yè)面展示設(shè)備的展示能力,并根據(jù)所述展示能力獲取所述待展示業(yè)務(wù)場(chǎng)景的目標(biāo)展示元素,其中,所述展示能力包括硬件能力和軟件能力;
27、展示模塊,用于根據(jù)所述目標(biāo)展示元素建立所述待展示業(yè)務(wù)場(chǎng)景的webassembly模塊,以使所述頁(yè)面展示設(shè)備加載所述webassembly模塊,并渲染展示所述待展示業(yè)務(wù)場(chǎng)景對(duì)應(yīng)的目標(biāo)展示元素。
28、第三方面,本申請(qǐng)?zhí)峁┮环N電子設(shè)備,包括:至少一個(gè)處理器和存儲(chǔ)器;
29、所述存儲(chǔ)器存儲(chǔ)計(jì)算機(jī)執(zhí)行指令;
30、所述至少一個(gè)處理器執(zhí)行所述存儲(chǔ)器存儲(chǔ)的計(jì)算機(jī)執(zhí)行指令,使得所述至少一個(gè)處理器執(zhí)行如上所述的頁(yè)面展示方法。
31、第四方面,本申請(qǐng)?zhí)峁┮环N計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上儲(chǔ)存有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上所述的頁(yè)面展示方法的步驟。
32、第五方面,本申請(qǐng)?zhí)峁┮环N計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括指令,所述指令在電子設(shè)備上執(zhí)行時(shí)使所述電子設(shè)備實(shí)現(xiàn)如上所述的頁(yè)面展示方法。
33、本申請(qǐng)?zhí)峁┑囊环N頁(yè)面展示方法、裝置、電子設(shè)備、介質(zhì)和程序產(chǎn)品,基于用戶發(fā)起的頁(yè)面展示請(qǐng)求,獲取頁(yè)面展示設(shè)備的設(shè)備類型,其中,所述頁(yè)面展示請(qǐng)求中包括待展示業(yè)務(wù)場(chǎng)景;根據(jù)所述設(shè)備類型獲取所述頁(yè)面展示設(shè)備的展示能力,并根據(jù)所述展示能力獲取所述待展示業(yè)務(wù)場(chǎng)景的目標(biāo)展示元素,其中,所述展示能力包括硬件能力和軟件能力;根據(jù)所述目標(biāo)展示元素建立所述待展示業(yè)務(wù)場(chǎng)景的webassembly模塊,以使所述頁(yè)面展示設(shè)備加載所述webassembly模塊,并渲染展示所述待展示業(yè)務(wù)場(chǎng)景對(duì)應(yīng)的目標(biāo)展示元素。
34、上述方法中,根據(jù)用戶發(fā)起的頁(yè)面展示請(qǐng)求,確認(rèn)在要在頁(yè)面上進(jìn)行展示的頁(yè)面展示設(shè)備的設(shè)備類型,以根據(jù)該設(shè)備類型確認(rèn)頁(yè)面展示設(shè)備的展示能力;頁(yè)面展示設(shè)備的展示能力不同,可針對(duì)不同業(yè)務(wù)場(chǎng)景進(jìn)行不同展示設(shè)計(jì),展示出不同的目標(biāo)展示元素,以靈活地適配頁(yè)面展示設(shè)備;根據(jù)要展示的目標(biāo)展示元素構(gòu)建待展示業(yè)務(wù)場(chǎng)景的webassembly模塊,加載webassembly模塊并完成相對(duì)應(yīng)的目標(biāo)展示元素渲染和展示,適用于不同設(shè)備的不同性能要求。
1.一種頁(yè)面展示方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述展示能力獲取所述待展示業(yè)務(wù)場(chǎng)景的目標(biāo)展示元素,包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述目標(biāo)展示元素建立所述待展示業(yè)務(wù)場(chǎng)景的webassembly模塊,包括:
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述以使所述頁(yè)面展示設(shè)備加載所述webassembly模塊,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述渲染展示所述待展示業(yè)務(wù)場(chǎng)景對(duì)應(yīng)的目標(biāo)展示元素,包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于用戶發(fā)起的頁(yè)面展示請(qǐng)求,獲取頁(yè)面展示設(shè)備的設(shè)備類型,包括:
7.一種頁(yè)面展示裝置,其特征在于,包括:
8.一種電子設(shè)備,其特征在于,包括:至少一個(gè)處理器和存儲(chǔ)器;
9.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上儲(chǔ)存有計(jì)算機(jī)程序,其特征在于,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1-6任意一項(xiàng)所述的頁(yè)面展示方法的步驟。
10.一種計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述計(jì)算機(jī)程序產(chǎn)品包括指令,所述指令在電子設(shè)備上執(zhí)行時(shí)使所述電子設(shè)備實(shí)現(xiàn)權(quán)利要求1-6中任一項(xiàng)所述的頁(yè)面展示方法。