【发布时间】:2020-07-23 02:35:37
【问题描述】:
我想为表单创建自定义规则。
示例如下:
<label class="form-label">Price range from</label>
<validation-provider rules="required_if:price_to" name="Price range from"
v-slot="{ errors }">
<input v-model="price_range_from" type="number"
ref="price_from">
<span class="validation-error form-span">{{ errors[0] }}</span>
</validation-provider>
</div>
<div class="ml-2 w-100">
<label class="form-label">Price range to</label>
<validation-provider name="Price range to"
v-slot="{ errors }">
<input v-model="price_range_to" type="number" class="form-control"
ref="price_to" name="price_range_to">
<span class="validation-error form-span">{{ errors[0] }}</span>
</validation-provider>
在这部分表单中,我想创建一个rule,它的逻辑如下:
-
input的price_range_from是required如果price_range_to字段不是null。 -
input的price_range_from不能更大 然后price_range_to。 - 反之亦然。
脚本:
import {ValidationProvider, ValidationObserver, extend} from 'vee-validate';
import * as rules from "vee-validate/dist/rules";
import {required} from 'vee-validate/dist/rules';
Object.keys(rules).forEach(rule => {
extend(rule, rules[rule]);
});
extend('required', {
...required,
message: 'This field is required'
});
尝试阅读 [https://logaretm.github.io/vee-validate/guide/forms.html] 上的文档 但找不到如何制定自定义规则的答案。
如果有人展示我可以理解并继续前进并制定更多自定义规则的示例,我会很高兴。
【问题讨论】:
标签: javascript forms vue.js vuejs2 vee-validate