element-ui select框改造加入添加和删除功能

文章展示了如何在Vue.js应用中使用el-select组件,包括绑定v-model,设置placeholder,实现可清除选项,以及通过el-option动态渲染数据。同时,提到了一个问题,即当滚动到select框底部时,最后一个option的高度会增加,并表达了对解决方案的期待。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 大概要做成这样 废话不说直接贴代码

                <el-select v-model="queryParams.supplier" placeholder="供应商" clearable>

                  <el-option v-for="(item, index) in gongyingshang" :key="item.value" :label="item.label"
                    :value="item.value">
                    {{ item.label }}
                    <!-- 将 label 改为插槽形式 -->
                    <template>
                      <el-popconfirm confirmButtonText="好的" cancelButtonText="取消" icon="el-icon-info" iconColor="red"
                        title="确定删除该供应商吗?" @confirm="deleteOptiongongyingshang(index)">
                        <span class="delete-option" slot="reference">删除</span>
                      </el-popconfirm>
                    </template>
                  </el-option>
                  <template>
                    <div class="add" @click="add()">
                      <span style="font-size: 16px">+</span> 新增
                    </div>
                  </template>
                </el-select>

还有css 把新增框固定在下

.add {
  width: 100%;
  height: 30px;
  color: #3396fa;
  text-align: center;
  border-top: 1px solid #ccc;
  font-size: 14px;
  line-height: 30px;
  position: sticky;
  bottom: 0px;
  background-color: #fff;
  opacity: 1;
}

 有个小问题 就是 select框拉到最下的时候 最后一个option会增大高度 这边懒得写 有朋友优化了记得告诉我贴下代码谢谢

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值