摘要:內(nèi)存不足起因小程序?qū)τ脩魞?nèi)存使用進(jìn)行了限制,如果一個(gè)頁(yè)面的圖片過(guò)多,會(huì)導(dǎo)致內(nèi)存不足的內(nèi)部錯(cuò)誤解決辦法對(duì)圖片進(jìn)行懶加載,不影響體驗(yàn)的前提下,只渲染當(dāng)屏的圖片,屏外圖片,顯示缺省圖實(shí)踐分析圖片最多的情況就是列表頭圖或圖片列表,為了性能,一般會(huì)滾
內(nèi)存不足起因
小程序?qū)τ脩魞?nèi)存使用進(jìn)行了限制,如果一個(gè)頁(yè)面的圖片過(guò)多,會(huì)導(dǎo)致內(nèi)存不足的內(nèi)部錯(cuò)誤解決辦法
對(duì)圖片進(jìn)行懶加載,不影響體驗(yàn)的前提下,只渲染當(dāng)屏的圖片,屏外圖片,顯示缺省圖實(shí)踐分析
圖片最多的情況就是列表(頭圖或圖片列表),為了性能,一般會(huì)滾動(dòng)加載,而在小程序中,需要借助scroll-view/swiper組件,為了不影響用戶體驗(yàn),就不能讓之前以渲染的列表元素失去占位
要判斷元素是否在當(dāng)屏,就要知道一些高度信息(屏幕高,滾動(dòng)高度,元素高度),但是元素高度在小程序中不能動(dòng)態(tài)獲取,所以就需要列表時(shí)定高的
代碼wxml文件
計(jì)算showIndex的方法,可作為公用方法
/** * offetHeight 滾動(dòng)計(jì)算部分到頂部距離 * scrollTop 滾動(dòng)高度 * height 每個(gè)模塊的高度 * colunm 列數(shù) **/ function countIndex (offetHight, scrollTop, height, colunm) { // 單例獲取屏幕寬度比 if (!countIndex.pix) { try { let res = wx.getSystemInfoSync() countIndex.pix = res.windowWidth / 375 } catch (e) { countIndex.pix = 1 } } let scroll = scrollTop - offetHight * countIndex.pix let hei = height * countIndex.pix return scroll > 0 ? Math.floor(scroll / hei) * colunm : 0 }
js文件
let wxTools = require("../../untils/wxTools.js") Page({ data: { scrollData: { offetHeight: 15, // px height: 80, // px colunm: 3 }, showIndex: 0 }, scrollHide (e) { let data = [ this.data.scrollData.offetHeight, e.detail.scrollTop, this.data.scrollData.height, this.data.scrollData.colunm ] let index = wxTools.countIndex(...data) this.setData({ showIndex: index }) } })
具體要渲染多少的元素,自己來(lái)定,這里沒(méi)有放到countIndex中加入計(jì)算,例如wxml中的{{showIndex + 24 > index && showIndex - 6 < index}},會(huì)渲染30個(gè)元素的圖片
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/50316.html
摘要:內(nèi)存不足起因小程序?qū)τ脩魞?nèi)存使用進(jìn)行了限制,如果一個(gè)頁(yè)面的圖片過(guò)多,會(huì)導(dǎo)致內(nèi)存不足的內(nèi)部錯(cuò)誤解決辦法對(duì)圖片進(jìn)行懶加載,不影響體驗(yàn)的前提下,只渲染當(dāng)屏的圖片,屏外圖片,顯示缺省圖實(shí)踐分析圖片最多的情況就是列表頭圖或圖片列表,為了性能,一般會(huì)滾 內(nèi)存不足起因 小程序?qū)τ脩魞?nèi)存使用進(jìn)行了限制,如果一個(gè)頁(yè)面的圖片過(guò)多,會(huì)導(dǎo)致內(nèi)存不足的內(nèi)部錯(cuò)誤 解決辦法 對(duì)圖片進(jìn)行懶加載,不影響體驗(yàn)的前提下,只...
摘要:內(nèi)存不足起因小程序?qū)τ脩魞?nèi)存使用進(jìn)行了限制,如果一個(gè)頁(yè)面的圖片過(guò)多,會(huì)導(dǎo)致內(nèi)存不足的內(nèi)部錯(cuò)誤解決辦法對(duì)圖片進(jìn)行懶加載,不影響體驗(yàn)的前提下,只渲染當(dāng)屏的圖片,屏外圖片,顯示缺省圖實(shí)踐分析圖片最多的情況就是列表頭圖或圖片列表,為了性能,一般會(huì)滾 內(nèi)存不足起因 小程序?qū)τ脩魞?nèi)存使用進(jìn)行了限制,如果一個(gè)頁(yè)面的圖片過(guò)多,會(huì)導(dǎo)致內(nèi)存不足的內(nèi)部錯(cuò)誤 解決辦法 對(duì)圖片進(jìn)行懶加載,不影響體驗(yàn)的前提下,只...
摘要:論壇上有過(guò)這么一篇熱門文章,它從角度分析了無(wú)限滾動(dòng)加載的設(shè)計(jì)實(shí)踐。無(wú)限滾動(dòng)加載背后的技術(shù)挑戰(zhàn)其實(shí)比想象中要多不少。整體思路和方案設(shè)計(jì)我們要實(shí)現(xiàn)的頁(yè)面樣例如圖,它能夠做到無(wú)限下拉加載內(nèi)容。 UX Planet論壇上有過(guò)這么一篇熱門文章: Infinite Scrolling Best Practices,它從UX角度分析了無(wú)限滾動(dòng)加載的設(shè)計(jì)實(shí)踐。 無(wú)限滾動(dòng)加載在互聯(lián)網(wǎng)上到處都有應(yīng)用:豆瓣...
摘要:論壇上有過(guò)這么一篇熱門文章,它從角度分析了無(wú)限滾動(dòng)加載的設(shè)計(jì)實(shí)踐。無(wú)限滾動(dòng)加載背后的技術(shù)挑戰(zhàn)其實(shí)比想象中要多不少。整體思路和方案設(shè)計(jì)我們要實(shí)現(xiàn)的頁(yè)面樣例如圖,它能夠做到無(wú)限下拉加載內(nèi)容。 UX Planet論壇上有過(guò)這么一篇熱門文章: Infinite Scrolling Best Practices,它從UX角度分析了無(wú)限滾動(dòng)加載的設(shè)計(jì)實(shí)踐。 無(wú)限滾動(dòng)加載在互聯(lián)網(wǎng)上到處都有應(yīng)用:豆瓣...
閱讀 1895·2021-11-15 11:46
閱讀 1091·2021-10-26 09:49
閱讀 1825·2021-10-14 09:42
閱讀 3384·2021-09-26 09:55
閱讀 838·2019-08-30 13:58
閱讀 1039·2019-08-29 16:40
閱讀 3474·2019-08-26 10:27
閱讀 611·2019-08-23 18:18