比如 <uni-collapse v-model="isOpen"> 在某个按钮中设置 isOpen = ["0"]可以正常展开折叠面板,但设置siOpen=Null 或 [] 并不会触发折叠,怎么回事。
uni-collapse 第81行 if (arr) { val.forEach(v => { if (v === vm.nameSync) { if (this.accordion) { console.warn('accordion 属性为 true ,v-model 类型应该为 string') return } vm.isOpen = true } }) } 这里需要修改一下 if (arr) { if (val.find(v => v === vm.nameSync)) { vm.isOpen = true } else { vm.isOpen = false } }
升级到 1.4.6 了,还是不好使,并且我在 data 中声明一个 collapseArray: [],我用一个按钮事件点击的时候 this.collapseArray.push('key1') 直接就报错了:this.collapseArray.push is not a function,data 中明确指定类型是空数组了;
6 个回复
最佳回复
DCloud_UNI_JBB
uni-collapse 1.4.7 版本已修复此问题,可升级到此版本
w***@163.com
uni-collapse 第81行
这里需要修改一下
DCloud_UNI_JBB
你的 uni-collapse 插件版本是多少?哪个端出现了这个问题
w***@163.com
最新版本。这里有明显的BUG,v-model如果是Array, 比如v-model="['0','1']", 可以将这两个展开。之后设置成v-model="[]", 这展开的两个就不能收缩了。
2025-09-02 14:32
DCloud_UNI_JBB
回复 w***@163.com: 哪个端?
2025-09-02 14:34
w***@163.com
回复 DCloud_UNI_JBB: 至少APP端是这个表现
2025-09-02 16:49
DCloud_UNI_JBB
回复 w***@163.com: 1.4.5 版本,我测试,app,小程序,web都没问题了
2025-09-02 17:20
w***@163.com
回复 DCloud_UNI_JBB: 哦,是的。我的是两个月前的最新版,我看了一下是1.4.4
2025-09-02 17:36
DCloud_UNI_JBB
回复 w***@163.com: 可以升级到1.4.5
2025-09-02 17:46
1***@qq.com
升级到 1.4.6 了,还是不好使,并且我在 data 中声明一个 collapseArray: [],我用一个按钮事件点击的时候 this.collapseArray.push('key1') 直接就报错了:this.collapseArray.push is not a function,data 中明确指定类型是空数组了;
DCloud_UNI_JBB
发一下你的代码
2025-09-11 15:48
1***@qq.com
回复 DCloud_UNI_JBB:
<template>
<view>
<uni-collapse ref="collapse" v-model="collapseArray">
<uni-collapse-item name="key1" title="默认开启">
<text>折叠内容</text>
</uni-collapse-item>
</uni-collapse>
<view @click="updateCollapse">更新折叠状态</view>
</view>
</template>
<script>
export default {
data() {
return {
collapseArray: []
}
},
methods: {
updateCollapse() {
if (this.collapseArray.length > 0) {
this.collapseArray.splice(0, 1)
} else {
this.collapseArray.push('key1')
}
}
}
}
</script>
<style>
</style>
2025-09-11 16:01
DCloud_UNI_JBB
回复 1***@qq.com: 我这里在web平台测试并没有复现报错,功能确实有问题,方便发一下你的报错吗?
2025-09-11 16:18
DCloud_UNI_JBB
回复 DCloud_UNI_JBB: 值更新页面没效果的问题我修复了,可升级到 1.4.7
2025-09-11 16:35
1***@qq.com
回复 DCloud_UNI_JBB: 第一点击更新折叠状态就会报错: Error in v-on handler: "TypeError: this.collapseArray.push is not a function"
2025-09-11 16:35
1***@qq.com
回复 DCloud_UNI_JBB: 好的,我等下试试
2025-09-11 16:36
DCloud_UNI_JBB
回复 1***@qq.com: 什么端,方便在im中发个截图吗?我测试并没有发现这个报错
2025-09-11 16:40
1***@qq.com
回复 DCloud_UNI_JBB: h5,就正常运行到 Chrome
2025-09-11 16:44
DCloud_UNI_JBB
回复 1***@qq.com: 1.4.6版本,你上面的我测试并没有任何报错
2025-09-11 17:04
1***@qq.com
你运行起来,点下更新折叠状态按钮,我运行起来一点就报图片上的错;
DCloud_UNI_JBB
我运行起来没报错
1***@qq.com
运行起来,点击 更新折叠状态
2025-09-11 17:32
DCloud_UNI_JBB
回复 1***@qq.com: 点了也没报错
2025-09-11 17:43
1***@qq.com
回复 DCloud_UNI_JBB: 这个跟运行环境有关系吗,我这是 Mac,HBuilder X 4,76,uni-collapse 1.47
2025-09-12 08:34
DCloud_UNI_JBB
回复 1***@qq.com: 没关系,你试试其他端呢
2025-09-12 10:03