Form
範例
<bpa-form
:model="exampleForm"
ref="refExampleForm"
:rules="exampleRules"
>
<bpa-form-item
label="姓名"
prop="name"
required
labelFor="thisIDIsMustTheSame"
@validate="onValidate"
>
<bpa-input
v-model="exampleForm.name"
id="thisIDIsMustTheSame"
/>
</bpa-form-item>
</bpa-form>
data() {
return {
exampleRules: {
name: [
{ required: true, message: 'name is required' },
{ min: 3, max: 5, message: 'at least 3 to 5 words', trigger: 'change' }
]
}
}
}
驗證
// required
const rules = {
input:[{ required: true, message: '此欄位必填', trigger: 'blur' }]
}
// multiple
const rules = {
check:[{ required: true, type:'array', message: 'please check', trigger: 'change' }]
}
// multiple
const rules = {
check:[{ required: true, type:'array', message: 'please check', trigger: 'change' }]
}
// max and min
const rules = {
check:[{ min:0, max: 3, type:'array', message: 'please check(max 3)', trigger: 'change' }]
}
// password
const form = {
password:'',
confirm:''
}
const validatePsw = (rule: Array<any>, value: string, callback: (par?: any)=>{}) => {
if (value !== form.password) {
let msg = 'Not Match!'
callback(new Error(msg));
} else {
callback();
}
}
const rules = {
confirm:[
{ required: true, validator: validatePsw, trigger:'blur'}
],
}
// regular express
const rules = {
password:[
{
pattern: /(?=.{12,})((?=.*\d)(?=.*[a-z])(?=.*[A-Z])|(?=.*\d)(?=.*[a-zA-Z])(?=.*[\W_])|(?=.*[a-z])(?=.*[A-Z])(?=.*[\W_])).*/,
trigger: 'blur'
}
],
}
Fieldset
<fieldset class="bpa-fieldset">
<legend>Experience</legend>
<div class="bpa-fieldset-container">
<bpa-form-item
label="Company"
prop="company"
labelFor="testModelId2"
>
<bpa-input
v-model="exampleForm.company"
id="testModelId2"
/>
</bpa-form-item>
</div>
</fieldset>
bpa-form 屬性
名稱 | Value | Type | Default Value | Required | 描述 |
---|
model | | Object | 隨機 | | |
rules | | async-validator | false | | |
autofocus | | Boolean | false | | 自動聚焦 |
bpa-form Props
bpa-form 方法
名稱 | Parameters |
---|
validate | Function () : Promise({valid: booleaml; error: object}) |
bpa-form Methods
bpa-form-item 屬性
bpa-form-item Props
bpa-form-item 事件
名稱 | Parameters | 描述 |
---|
validate | { valid: boolean, message: string } | { valid: boolean, message: string } |
bpa-form-item Events
演示