Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
genary
uni-app
提交
af17f222
U
uni-app
项目概览
genary
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
af17f222
编写于
11月 10, 2020
作者:
d-u-a
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: 补充schem校验函数示例,更新enum示例代码
上级
0233c1e4
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
64 addition
and
69 deletion
+64
-69
docs/uniCloud/schema.md
docs/uniCloud/schema.md
+64
-69
未找到文件。
docs/uniCloud/schema.md
浏览文件 @
af17f222
...
...
@@ -344,10 +344,39 @@ uniCloud推出了`openDB`开源数据库规范,包括用户表、文章表、
// value 当前规则校验数据
// data 全部校验数据
// callback 可选,一般用于自定义 errorMessage,如果执行了callback return 值无效,callback 传入的 message 将替换 errorMessage
// callback(new Error('message')) 传入 Error 类型时校验不通过
// callback('message') 传入 String 类型时通过
// callback('message') 传入错误消息时校验不通过
// callback() 无参时通过
// 注意 callback 不支持异步调用,异步请使用 Promise/await/async
return
value
.
length
<
10
}
// 异步校验 Promise
export
=
function
(
rule
,
value
,
data
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
setTimeout
(()
=>
{
if
(
value
>
10
)
{
// 校验通过
resolve
()
}
else
{
// 校验失败
resolve
(
'
error
'
)
// 等于 reject(new Error('error'))
// reject(new Error('error'))
}
},
3000
);
})
}
// 异步校验 await/async
export
=
async
function
(
rule
,
value
,
data
)
{
let
result
=
await
uni
.
request
({...})
if
(
result
>
10
)
{
// 校验通过
return
true
}
else
{
// 校验失败
return
'
error message
'
}
}
```
3.
在表结构 schema 编辑页面中的
`validateFunction`
属性中配置上面编写的 扩展校验函数 的名称,保存生效
...
...
@@ -478,7 +507,7 @@ errorMessage支持字符串,也支持json object。类型为object时,可定
},
"properties"
:
{
"_id"
:{},
"name"
:{},
"name"
:{},
"pwd"
:
{}
}
}
...
...
@@ -828,7 +857,7 @@ DCloud提供了`uni-forms`前端组件,该组件的校验规范完全符合`DB
<!--
如果是时间戳,则需要新做一个时间选择组件
如果有枚举,默认为
picker
如果有枚举,默认为
uni-data-checkbox
如果是number且有大小范围,默认用步进器
-->
...
...
@@ -913,45 +942,41 @@ DCloud提供了`uni-forms`前端组件,该组件的校验规范完全符合`DB
"bsonType"
:
"array"
,
"description"
:
"爱好"
,
"label"
:
"爱好"
,
"component"
:
{
"name"
:
"checkbox-group"
,
"childrenData"
:
[{
"label"
:
"游泳"
,
"value"
:
1
},
{
"label"
:
"骑行"
,
"value"
:
2
},
{
"label"
:
"音乐"
,
"value"
:
3
},
{
"label"
:
"美术"
,
"value"
:
4
}
]
}
"enum"
:
[
{
"text"
:
"游泳"
,
"value"
:
1
},
{
"text"
:
"骑行"
,
"value"
:
2
},
{
"text"
:
"音乐"
,
"value"
:
3
},
{
"text"
:
"美术"
,
"value"
:
4
}
]
},
"gender"
:
{
"bsonType"
:
"int"
,
"enum"
:
[
0
,
1
,
2
],
"description"
:
"用户性别:0 未知 1 男性 2 女性"
,
"label"
:
"性别"
,
"component"
:
{
"name"
:
"radio-group"
,
"childrenData"
:
[{
"label"
:
"男"
,
"value"
:
1
},
{
"label"
:
"女"
,
"value"
:
2
}
]
},
"errorMessage"
:
"{label}无效"
"errorMessage"
:
"{label}无效"
,
"defaultValue"
:
0
,
"enum"
:
[{
"text"
:
"未知"
,
"value"
:
0
},
{
"text"
:
"男"
,
"value"
:
1
},
{
"text"
:
"女"
,
"value"
:
2
}]
},
"email"
:
{
"bsonType"
:
"string"
,
...
...
@@ -965,7 +990,7 @@ DCloud提供了`uni-forms`前端组件,该组件的校验规范完全符合`DB
"label"
:
"自定义children"
,
"component"
:
{
"name"
:
"select"
,
"children"
:
"<option value=
"
{
item.value
}
"
>{item.label}</option>"
,
"children"
:
"<option value=
'{item.value}'
>{item.label}</option>"
,
"childrenData"
:
[{
"label"
:
"中文简体"
,
"value"
:
"zh-cn"
}]
}
}
...
...
@@ -974,36 +999,6 @@ DCloud提供了`uni-forms`前端组件,该组件的校验规范完全符合`DB
```
component 类型为数组
```
json
{
"bsonType"
:
"object"
,
"required"
:
[],
"properties"
:
{
"mobile"
:
{
"bsonType"
:
"string"
,
"label"
:
"多个组件"
,
"component"
:
[
{
"name"
:
"input"
,
"props"
:
{
"placeholder"
:
"电话1"
}
},
{
"name"
:
"input"
,
"props"
:
{
"placeholder"
:
"电话2"
}
}
]
}
}
}
```
#### group属性
将多个表单项合并在一个分组里显示。前端渲染时,group相同的表单项会自动合并在一个uni-group组件中,不同分组的表单项之间有间隔。该组件详见:
[
https://ext.dcloud.net.cn/plugin?id=3281
](
https://ext.dcloud.net.cn/plugin?id=3281
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录