|
前言:做前端開(kāi)發(fā)的同學(xué),都遇到過(guò)頁(yè)面節(jié)點(diǎn)過(guò)多,從而導(dǎo)致頁(yè)面加載很慢,或者瀏覽器直接崩潰~
在小程序開(kāi)發(fā)中,下拉刷新數(shù)據(jù)的用法應(yīng)該比較多,那么小程序頁(yè)面節(jié)點(diǎn)最大數(shù)量又是多大呢? 剛才最近在修改一個(gè)投票的小程序,發(fā)現(xiàn)投票最多的一個(gè),竟然有近1W人參與,然后在查看投票詳情時(shí),小程序頁(yè)面就是個(gè)空頁(yè)面(已經(jīng)崩潰了) 然后就查看了API返回的數(shù)據(jù): 這么多數(shù)據(jù)直接扔到小程序模板里面去遍歷(wx:for),開(kāi)發(fā)者工具的日志里面就直接報(bào)錯(cuò)了:invokeWebviewMethod 數(shù)據(jù)傳輸長(zhǎng)度為 1233778 已經(jīng)超過(guò)最大長(zhǎng)度 1048576
至于為什么是1048576這個(gè)長(zhǎng)度,恐怕要問(wèn)微信團(tuán)隊(duì)的底層實(shí)現(xiàn)了,應(yīng)該是考慮到性能問(wèn)題,不允許一次性加載這么多節(jié)點(diǎn)到頁(yè)面上~ 注:巧的是1048576B=1M,excel的最大行數(shù)也是1048576行,也許微信這個(gè)節(jié)點(diǎn)長(zhǎng)度用這個(gè)值是經(jīng)過(guò)考慮之后的一個(gè)值。 好了,現(xiàn)在只能修改交互設(shè)計(jì)了,不能一次性加載太多,只能分頁(yè)加載更多數(shù)據(jù)了~ |