|
|
|
import { shortcut, Widget, createWidget, isEmpty, isNotEmptyArray } from "@/core";
|
|
|
|
|
|
|
|
@shortcut()
|
|
|
|
export class Form extends Widget {
|
|
|
|
static xtype = "demo.form";
|
|
|
|
|
|
|
|
props = { baseCls: "demo-form" };
|
|
|
|
|
|
|
|
render() {
|
|
|
|
const widget = BI.createWidget({
|
|
|
|
type: "bi.custom_form",
|
|
|
|
width: 300,
|
|
|
|
labelWidth: 100,
|
|
|
|
items: [
|
|
|
|
{
|
|
|
|
validate(v) {
|
|
|
|
return v !== "a" && v !== "";
|
|
|
|
},
|
|
|
|
tip(v) {
|
|
|
|
if (BI.isEmpty(v)) {
|
|
|
|
return "不能为空";
|
|
|
|
}
|
|
|
|
|
|
|
|
return "不合法格式";
|
|
|
|
},
|
|
|
|
label: "E-mail",
|
|
|
|
el: {
|
|
|
|
type: "bi.text_editor",
|
|
|
|
watermark: "输入a报错",
|
|
|
|
allowBlank: true,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
validate(v) {
|
|
|
|
return BI.isNotEmptyArray(v);
|
|
|
|
},
|
|
|
|
tip() {
|
|
|
|
return "不能为空";
|
|
|
|
},
|
|
|
|
label: "性别",
|
|
|
|
el: {
|
|
|
|
type: "bi.text_value_combo",
|
|
|
|
text: "请选择",
|
|
|
|
items: [
|
|
|
|
{
|
|
|
|
text: "男",
|
|
|
|
value: 1,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
text: "女",
|
|
|
|
value: 2,
|
|
|
|
}
|
|
|
|
],
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
validate(v) {
|
|
|
|
return v !== "";
|
|
|
|
},
|
|
|
|
tip() {
|
|
|
|
return "不能为空";
|
|
|
|
},
|
|
|
|
label: "姓名",
|
|
|
|
el: {
|
|
|
|
type: "bi.text_editor",
|
|
|
|
watermark: "输入姓名",
|
|
|
|
allowBlank: true,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
validate(v) {
|
|
|
|
return v !== "";
|
|
|
|
},
|
|
|
|
tip() {
|
|
|
|
return "不能为空";
|
|
|
|
},
|
|
|
|
label: "姓名",
|
|
|
|
el: {
|
|
|
|
type: "bi.textarea_editor",
|
|
|
|
cls: "bi-border",
|
|
|
|
watermark: "输入简介",
|
|
|
|
allowBlank: true,
|
|
|
|
height: 200,
|
|
|
|
},
|
|
|
|
}
|
|
|
|
],
|
|
|
|
layout: {
|
|
|
|
type: "bi.vertical",
|
|
|
|
vgap: 30,
|
|
|
|
},
|
|
|
|
});
|
|
|
|
|
|
|
|
return {
|
|
|
|
type: "bi.vertical",
|
|
|
|
hgap: 200,
|
|
|
|
vgap: 10,
|
|
|
|
items: [
|
|
|
|
widget,
|
|
|
|
{
|
|
|
|
type: "bi.button",
|
|
|
|
text: "提交",
|
|
|
|
handler() {
|
|
|
|
widget.validate();
|
|
|
|
|
|
|
|
console.log(widget.getValue());
|
|
|
|
},
|
|
|
|
}
|
|
|
|
],
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|