问题:展开折叠版内容展示不全
解决办法:监听每一次折叠版展开,并重新计算高度
1.给折叠版ref,利用change事件监听折叠版展开
<template>
<view>
<view>
<u-collapse @change="handleOpenChange">
<u-collapse-item
v-for="(item, index) in 5"
:key="index"
:title="'第个' + index + 1 + '折叠版'"
ref="collapseHeight"
>
<view class="item">
<p v-for="(item, index) in 50" :key="index">{{ index + 1 }}</p>
</view>
</u-collapse-item>
</u-collapse>
</view>
</view>
</template>
2.重新计算高度
如果有多个折叠版就必须用循环计算每一个折叠版高度
methods: {
// 从新计算折叠版高度
handleOpenChange() {
// 方法一
console.log(this.$refs.collapseHeight);
let long = this.$refs.collapseHeight.length;
setTimeout(() => {
for (let i = 0; i < long; i++) {
this.$refs.collapseHeight[i].queryRect();// 计算高度
}
}, 20);
// 方法二
//this.$nextTick(() => {
//this.$refs.collapseHeight.init()
//})
},
},