当前位置:首页 > uni-app

uniapp用什么校验

2026-02-06 08:01:54uni-app

uniapp 常用校验方法

在 uniapp 中,数据校验可以通过多种方式实现,以下是常见的校验方法:

表单校验
使用 uni-forms 组件内置的校验规则,支持必填、长度、正则等验证:

uniapp用什么校验

<uni-forms :rules="rules">
  <uni-forms-item name="username" label="用户名">
    <input v-model="formData.username" />
  </uni-forms-item>
</uni-forms>

rules: {
  username: {
    rules: [
      { required: true, errorMessage: '用户名必填' },
      { pattern: /^[a-zA-Z0-9]{3,10}$/, errorMessage: '3-10位字母或数字' }
    ]
  }
}

手动校验
通过自定义函数进行校验,适用于复杂逻辑:

uniapp用什么校验

validateForm() {
  if (!this.formData.email) {
    uni.showToast({ title: '邮箱不能为空', icon: 'none' });
    return false;
  }
  if (!/^\w+@\w+\.\w+$/.test(this.formData.email)) {
    uni.showToast({ title: '邮箱格式错误', icon: 'none' });
    return false;
  }
  return true;
}

第三方校验库
集成 vee-validateasync-validator 等库实现高级校验:

// 使用 async-validator
import Schema from 'async-validator';
const descriptor = {
  phone: { type: 'string', pattern: /^1[3-9]\d{9}$/, message: '手机号格式错误' }
};
const validator = new Schema(descriptor);
validator.validate({ phone: '13800138000' }, (errors) => {
  if (errors) console.error(errors);
});

服务端校验
提交数据到服务器后通过接口返回错误信息:

uni.request({
  url: '/api/submit',
  method: 'POST',
  data: this.formData,
  success: (res) => {
    if (res.data.code === 400) {
      uni.showToast({ title: res.data.message, icon: 'none' });
    }
  }
});

校验场景建议

  • 简单表单:优先使用 uni-forms 内置校验
  • 复杂逻辑:结合手动校验或第三方库
  • 安全性要求高的数据(如密码):必须增加服务端二次校验

注意事项

  1. 前端校验不可替代服务端校验,需两者结合
  2. 移动端校验失败时应通过 uni.showToast 等轻量提示
  3. 正则表达式需根据实际业务调整,如身份证、银行卡号等专用规则

标签: uniapp
分享给朋友:

相关文章

uniapp怎么使用

uniapp怎么使用

安装与开发环境搭建 下载HBuilderX作为开发工具,这是官方推荐的IDE,内置uniapp项目模板和调试工具。安装后通过新建项目选择uniapp模板,支持Vue.js语法。确保Node.js环境已…

海康 uniapp

海康 uniapp

海康威视与UniApp集成方案 海康威视的硬件设备(如摄像头、NVR等)与UniApp结合,通常需要通过海康的开放平台API或SDK实现功能调用。以下是具体实现方法: 获取海康威视开放平台权限 注册…

uniapp adb

uniapp adb

在UniApp中使用ADB的方法 ADB(Android Debug Bridge)是Android开发中常用的调试工具,可用于UniApp项目的真机调试、日志查看等操作。以下是具体使用方法: 连接…

uniapp 摇骰子

uniapp 摇骰子

uniapp 摇骰子实现方法 页面布局 在 pages 目录下创建骰子页面(如 dice.vue),使用 view 和 image 组件构建骰子界面。骰子图片可通过静态资源或网络地址加载。 <…

uniapp 成功案例

uniapp 成功案例

成功案例概览 UniApp 凭借跨平台开发能力,已被多个行业采用,涵盖电商、社交、教育、政务等领域。以下为部分典型案例: 京东拼购 京东拼购(现为“京喜”)采用 UniApp 开发,实现微信小程序、…

uniapp与vr

uniapp与vr

Uniapp与VR的结合方式 Uniapp作为跨平台开发框架,本身不直接支持VR开发,但可以通过以下方式实现与VR技术的结合: 使用WebXR API Uniapp可以调用WebXR API在H5端…