- 因?yàn)槭莝wiper所以內(nèi)涵多個(gè)相同類名(但是高度不一樣!),根據(jù)相同類元素的不同高度來設(shè)置swiper的高度從而達(dá)到自適應(yīng)高
所以需要獲取相同類元素的節(jié)點(diǎn)信息(主要是高度)方法如下
const SelectorQuery = wx.createSelectorQuery();//獲取頁面中界面上的節(jié)點(diǎn)信息,返回一個(gè)SelectorQuery 對象實(shí)例
SelectorQuery.selectAll('.xxx').boundingClientRect();//(選擇當(dāng)前頁面下匹配選擇器的所有節(jié)點(diǎn))
SelectorQuery.exec(res=>{//執(zhí)行所有的請求,請求結(jié)果按請求次序構(gòu)成數(shù)組)
console.log(res,'9999')
})
注意:swiper高度需要單位px
邏輯:
1.在onLoad()方法里調(diào)用getSwiperHight()
2.獲取所有swiper-item內(nèi)容高度組成的數(shù)組焙蹭,getSwiperHight(){}
// 獲取swiper-item高度方法二
getSwiperHight(){
let that = this;
const SelectorQuery = wx.createSelectorQuery();
SelectorQuery.selectAll('.xxxx').boundingClientRect();
SelectorQuery.exec(res=>{
let swiperitemsH = [];
res[0].forEach((item,index)=>{
swiperitemsH.push(item.height);
});
let swiperfirst = swiperitemsH[0]+'px';
that.setData({xxSwiperItemsH:swiperitemsH,swiperHeight:swiperfirst});
})
},
3.在點(diǎn)擊tab和滑動(dòng)tab兩個(gè)行為時(shí)調(diào)用方法設(shè)置設(shè)置swiper的 高度