预览效果

核心代码
{{"*".repeat(text.length)}}
:type="type=='number'?'tel':'text'"
ref="inputText"
:style="[star?'':{paddingLeft:'5px'},right?{textAlign:'right'}:'']"
:class="['text',className]"
v-model="value"
@keyup="handelKeyup"
:placeholder="text?'':placeholder"
:maxlength="maxlength" />
watch: {
value(val) {
if(this.star && val){
if(/.*[u4e00-u9fa5]+.*$/.test(val)){
this.value = val.replace(/[u4e00-u9fa5]/gm,'')
return ;
}
this.text += val
if(this.star){
this.value = ''
}
}
}
},
methods: {
handelKeyup(e){
if(e.keyCode==8){
this.text=this.text.slice(0,this.text.length-1)
}
this.$emit("input",this.star? this.text : this.value)
}
}
本文介绍了一种基于Vue框架的输入框组件实现方案,该方案能够根据输入内容的特性进行样式调整,并通过监听键盘事件来实时更新显示状态。特别地,文章详细解释了如何使用正则表达式过滤中文输入,以及如何在删除操作时维护内部状态。
1万+

被折叠的 条评论
为什么被折叠?



