Luckean's blog Luckean's blog
首页
  • 前端文章

    • JavaScript
  • 项目笔记

    • 项目笔记
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • HTML
  • CSS
  • flutter 布局
  • dart 数组的定义
  • java目录
  • jenkins配置
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • vscode vim 结合使用
  • vscode vim 汇总
  • vscode快捷键
  • vscode自定义快捷键
  • typora 使用技巧
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档

Luckean

前端界的小学生
首页
  • 前端文章

    • JavaScript
  • 项目笔记

    • 项目笔记
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • HTML
  • CSS
  • flutter 布局
  • dart 数组的定义
  • java目录
  • jenkins配置
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • vscode vim 结合使用
  • vscode vim 汇总
  • vscode快捷键
  • vscode自定义快捷键
  • typora 使用技巧
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
  • 项目笔记
    • A-Form-Item
      • rules 路由校验规格
      • 坑
  • 《Ant Design Vue》学习笔记
Luckean
2023-02-23
目录

项目笔记

# A-Form

# rules
// 对象属性
const rules: Record<string, Rule[]> = {
  mobile: [
    {
      required: true,
      trigger: 'blur',
      validator: (rule: Rule, value: string) => {
        if (!value) {
          return Promise.reject(new Error('错误信息'))
        }
        return Promise.resolve()
      },
    }
  ],
  captcha: [
    {
      required: true,
      trigger: 'blur',
      len: 6
    }
  ],
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

# A-Form-Item

作用:表单名称,会作为表单字段 id 前缀使用	,循环表单用数组,需要定位到属性.
:name="['shiftTime', index, 'time','rangTime']"
1
2
# rules 路由校验规格
:rules="{required: true,message:"错误信息"}"
:rules="{required:true,validator:validator}"
:rules="[{required:true,validator:validator}]" // 可数组传入
{
    required: true,
    trigger: 'blur', // 校验触发时机 	'blur' | 'change' | ['change', 'blur']
    validator: validate
}
// validator	自定义校验(注意,callback 必须被调用)
// 官方文档指出 https://github.com/ant-design/ant-design/issues/5155
const validate = (rule,value,callback) => {
    if(!value) {
        Promise.reject(new Error('错误信息'))
    }
    return Promise.resole()
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 坑

  • v2 升级 v3
    • 时间组件英文显示,且点击时间组件无法弹出窗口,原因是v2使用momentjs,v3使用dayjs,两者不兼容。导入时间组件,使用 momentjs 或者 date-fns 日期库
    • import DatePicker from 'ant-design-vue/es/date-picker/moment'
    • 文档: https://www.antdv.com/docs/vue/replace-date-cn
    • 同时引入import TimePicker from 'ant-design-vue/es/time-picker/moment';
      • 会导致dataPciker丢失样式
  • 表格table
    • v2 升级到 v3 dataIndex 从支持路径嵌套如 user.age 改成了数组路径如 ['user', 'age']。以解决过去属性名带 . 需要额外的数据转化问题
上次更新: 2023/05/07, 13:36:36
最近更新
01
Mac配置nginx+php
08-23
02
p12文件的生成
08-22
03
mac 程序安装失败解决
08-18
更多文章>
Theme by Vdoing | Copyright © 2022-2023 Lucking | 粤ICP备2022078904号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式