Vue.js v-mask将电话号码屏蔽为巴西格式
我正在使用vue+v-mask为电话字段实现巴西格式(99)9999-9999或(99)99999-9999的掩码。我进行了研究,但没有发现100%适合我的东西,所以我做了自己的实现,但有点难看。。。我无法删除已经键入的块。。。如果有人有一个更优雅的解决方案,可以给我一点帮助,我很感激Vue.js v-mask将电话号码屏蔽为巴西格式,vue.js,vue-component,Vue.js,Vue Component,我正在使用vue+v-mask为电话字段实现巴西格式(99)9999-9999或(99)99999-9999的掩码。我进行了研究,但没有发现100%适合我的东西,所以我做了自己的实现,但有点难看。。。我无法删除已经键入的块。。。如果有人有一个更优雅的解决方案,可以给我一点帮助,我很感激 <v-text-field label="Celular*" v-model="clienteData.celular" :error-mes
<v-text-field
label="Celular*"
v-model="clienteData.celular"
:error-messages="errors.celular"
v-mask="phone_mask"
></v-text-field>
将数据传递到v-mask
<script>
export function phoneMask(value) {
const ddd = [
/[0-9]/, /[0-9]/
];
if(value.length < 14){
return [ '(',... ddd, ')', /[0-9]/, /[0-9]/, /[0-9]/, /[0-9]/, '-',/[0-9]/, /[0-9]/, /[0-9]/, /[0-9]/ ]
}
return value.length > 2 ?[ '(',... ddd, ')', /[0-9]/, /[0-9]/, /[0-9]/, /[0-9]/, /[0-9]/, '-',/[0-9]/, /[0-9]/, /[0-9]/, /[0-9]/ ] : ['(', ...ddd, ')']
}
export default {
data: () => ({
phone_mask : phoneMask
}),
}
导出函数phoneMask(值){
常数ddd=[
/[0-9]/, /[0-9]/
];
如果(值。长度<14){
返回['(',…ddd'),/[0-9]/,/[0-9]/,/[0-9]/,/[0-9]/,'-',/[0-9]/,/[0-9]/,/[0-9]/]
}
返回值.length>2?['(',…ddd'),/[0-9]/,/[0-9]/,/[0-9]/,/[0-9]/,/[0-9]/,'-',/[0-9]/,/[0-9]/,/[0-9]/:['(',…ddd')]
}
导出默认值{
数据:()=>({
电话掩码:电话掩码
}),
}
请翻译或发到。对不起,我以为是用葡萄牙语版本发的