1***@163.com
1***@163.com
  • 发布:2023-12-12 11:32
  • 更新:2023-12-12 12:00
  • 阅读:320

uni-collapse 关闭问题

分类:uni-app

动态生成多个折叠面板,想在打开第二个时候关闭其他的,通过设置子项的isOpen 收起了子项, 但是箭头没有改变,页面刷新后还是会重新打开

                <uni-list-item v-for="(item,index) in entityset" :key="item.id">  
                    <template v-slot:body>  
                        <view style="width: 100%;">  

                            <uni-collapse  :id="'panel' + index":ref="'panel${index}'" :key="index"  @change="handleChange(item.id,index)" style="width: 100%;" type="line">  
                                <uni-collapse-item >  
                                    <view>  
                                        <div class="line" />  
                                        <uni-row style="width: 100%;padding-top: 20rpx;font-size: 15px; ">  
                                            <uni-col :span="24">  
                                                <span>备注</span>  
                                            </uni-col>  
                                        </uni-row>  
                                        <div class="line" />  
                                        </uni-row>  
                                    </view>  
                                    <!-- </uni-list-item>  
                                        </uni-list> -->  
                                </uni-collapse-item>  
                            </uni-collapse>  
                        </view>  
                    </template>  
                </uni-list-item>  
            </uni-list>  
                   handleChange(id, index) {  
                this.currentPanel=index;  
                console.log("当前点击", a)  
                for(var i=0;i<this.entityset.length;i++){  
                    if(i!==this.currentPanel){  
                        var a = document.getElementById('panel'+i);  
                        a.children[0].isOpen=false  
                    }  

                }  
                console.log("当前点击", )  

            },  
2023-12-12 11:32 负责人:无 分享
已邀请:
喜欢技术的前端

喜欢技术的前端 - QQ---445849201

可以把循环放到 uni-collapse-item 上试试 v-model="accordionVal" accordionVal默认给null


<uni-collapse  accordion v-model="accordionVal" @change="change">  
                <uni-collapse-item title="手风琴效果" v-for="(item,index) in 5" :key="index">  
                    <view class="content">  
                        <text class="text">手风琴效果同时只会保留一个组件的打开状态,其余组件会自动关闭。</text>  
                    </view>  
                </uni-collapse-item>  
            </uni-collapse>
  • 1***@163.com (作者)

    谢谢您的回答,因为我是第一次用这个,我的业务场景是这样的,我需要循环出来多个uni-collapse,

    每个uni-collapse里面只有一个item,现在我遇到的问题是怎么能够指定关闭某一个uni-collapse?例如根据id操作dom元素的什么属性可以做到吗

    2023-12-12 16:11

要回复问题请先登录注册