圖片懶加載,數(shù)據(jù)懶加載镊靴, 路由懶加載
1.圖片懶加載原理
1.1 開始時 不設(shè)置src屬性
1.2 圖片在可視區(qū)域內(nèi),設(shè)置src 然后加載圖片
1.3 使用API,intersectionObserver 可以用監(jiān)聽元素是否可見
1.4 實際開發(fā)中 在vueuse 使用?useIntersectionObserver
1.5 一般封裝成全局指令? <img v-lazy="xxxx" ,配合app.use做成獨立的插件言津。
2.數(shù)據(jù)懶加載
場景:我的主頁上有很多個模塊,每個模塊都發(fā)ajax拿數(shù)據(jù)取试,并且是在組件創(chuàng)建時發(fā)的請求悬槽。這樣有一個后果:靠近底層的模塊其實用戶都看不到,這個發(fā)請求浪費性能瞬浓。
思路:判斷當(dāng)前模塊是否可見初婆,可見就發(fā)請求
做法: 封裝一個自定義的hooks,接收一個回調(diào)猿棉,返回一個ref磅叛。這個ref可以用在模塊的外層dom上 : 當(dāng)這個ref引用的dom可見是,就執(zhí)行這個回調(diào)(發(fā)請求)
實操:借用vueuse, useIntersectionObserver去封裝萨赁。(react生態(tài)中弊琴,有一個和vueuse類似的庫: ahooks)