开发避坑指南(26):Vue3 input输入框前置后 置元素解决方案

Vue3 input输入框前后置元素解决方案

需求背景

在Vue3环境中,在输入框的后面或者前面带图标、或者带文本、或者带按钮,该怎么实现?

解决办法

在输入框的后面或者前面带图标、或者带文本、或者带按钮这种输入框通常称为复合型输入框,可前置或后置元素,一般为标签或按钮。

方案1

插槽方式实现。以后置文本为例,如下:

<el-form-item :label="columnLabel('price', '单价')" prop="price">
  <el-input v-model="form.price" :placeholder="showInfo ? '' : '请输入单价'" >
     <template slot="append">人民币</template>
  </el-input>  
</el-form-item>

前面的文章中我们已经讲解过了,Vue3环境中,这种写法会报错误:[vue/no-deprecated-slot-attribute]slot attributes are deprecated,应该用v-slot属性代替,如下:

<template v-slot="append">人民币</template>

但是这种写法还是报错:‘append’ is declared but its value is never read.正确写法应该是:

<template v-slot:append>人民币</template>

或者进一步简写


                
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帧栈

您的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值