let _that = this; let content = e.detail.value.opinion; let contact = e.detail.value.contact; let regPhone = /^1[3578]\d{9}$/; let regEmail = /^[a-z\d_\-\.]+@[a-z\d_\-]+\.[a-z\d_\-]+$/i; 这是文本框以及填写联系方式的部分函数 请问在hbuilderx的vue上要怎么改才可以
时间: 2024-04-14 13:26:14 浏览: 167
微信小程序ES6: for(let i ...) 会报not defined错误
在 HBuilderX 上的 Vue 代码中,可以按照以下方式修改你提供的代码段:
```vue
<template>
<view>
<textarea v-model="opinion"></textarea>
<input v-model="contact" type="text" placeholder="联系方式" />
<button @click="handleFormSubmit">提交</button>
</view>
</template>
<script>
export default {
data() {
return {
opinion: '',
contact: ''
};
},
methods: {
handleFormSubmit() {
let content = this.opinion;
let contact = this.contact;
let regPhone = /^1[3578]\d{9}$/;
let regEmail = /^[a-z\d_\-\.]+@[a-z\d_\-]+\.[a-z\d_\-]+$/i;
// 进行合法性验证
if (!content.trim()) {
uni.showToast({
title: '输入不合法',
icon: 'none',
mask: true
});
return;
}
if (!regPhone.test(contact) && !regEmail.test(contact)) {
uni.showToast({
title: '联系方式不合法',
icon: 'none',
mask: true
});
return;
}
// 其他处理逻辑
}
}
};
</script>
```
上述代码将原生小程序的 `e.detail.value` 改为了 Vue 的数据绑定,通过 `v-model` 将文本框的值绑定到 `opinion` 和 `contact` 数据属性上。同时,将合法性验证的提示方式改为 HBuilderX 上的 `uni.showToast`。
请注意,以上代码只是一个示例,实际使用时可能需要根据具体需求进行适当的修改和调整。同时,如果你在 HBuilderX 中使用了 uView 或其他 UI 框架,可能还需要根据具体框架的文档进行相应的调整。
阅读全文