vue多选 取消多选

在这里插入图片描述

<!-- 选择分类 -->
            <div class="cell-item">
                <div class="item-label">选择分类</div>
                <div class="item-value" @click="showLabel">
                    <div class="value">
                        <div
                            v-for="(item, index) in addLabelList"
                            :key="index"
                            class="checked-label"
                        >
                            <van-tag
                                v-if="showClose"
                                closeable
                                plain
                                type="primary"
                                color="#51a78d"
                                text-color="#51a78d"
                                @close="closeTag(item)"
                                >{{ item }}</van-tag
                            >
                        </div>
                    </div>
                    <div class="down-arrow">
                        <van-image
                            v-show="showDownArrow"
                            width="100%"
                            height="100%"
                            fit="cover"
                            :src="downArrow"
                            v-lazy="downArrow"
                        />
                        <van-image
                            v-show="!showDownArrow"
                            width="100%"
                            height="100%"
                            fit="cover"
                            :src="upArrow"
                            v-lazy="upArrow"
                        />
                    </div>
                </div>
            </div>
            <!-- 标签列表 -->
            <div class="label-list" v-show="!showDownArrow">
                <div
                    class="label-item"
                    :class="{ checked: addLabelList.indexOf(item) != -1 }"
                    v-for="(item, index) in labelList"
                    :key="index"
                    @click="addLabel(item, index)"
                >
                    {{ item }}
                </div>
            </div>
            <div class="bottom-line"></div>
data:()=>({
downArrow: require("@/assets/image/upload/down-arrow.png"),
upArrow: require("@/assets/image/upload/up-arrow.png"),
showDownArrow: true,
labelList: ["好吃", "好耍", "好美", "好有范儿"],
addLabelList: [],
})
 showLabel() {
            this.showDownArrow = !this.showDownArrow;
        },
        addLabel(item) {
            console.log(this.addLabelList.indexOf(item));
            if (this.addLabelList.indexOf(item) !== -1) {
                this.addLabelList.splice(this.addLabelList.indexOf(item), 1); //取消
            } else {
                this.addLabelList.push(item); //选中添加到数组里
            }
            console.log(this.addLabelList);
        },
        closeTag(item) {
            console.log(item);
            this.addLabelList.splice(this.addLabelList.indexOf(item), 1);
        },
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值