我正在将Vuetify与Vee-Validate结合使用。我使用以下命令将vee-validate和规则导入我的组件中:

import { ValidationProvider, extend } from 'vee-validate';
import { min_value } from 'vee-validate/dist/rules';

extend('min_value', {
    ...min_value,
    message: "Must be higher than {length}"
});

然后我的template中有以下内容:

<ValidationProvider :rules="`min_value:${obj.min[selectedUnit]}`" v-slot="{ errors }">
    <v-text-field
        v-model="obj.value[selectedUnit]"
        :label="key"
        ref="key"
        :min="obj.min[selectedUnit]"
        :max="obj.max[selectedUnit]"
        :error-messages="errors"
        :suffix="selectedUnit"
        outlined
        required
        type="number"
    ></v-text-field>
</ValidationProvider>

该规则有效,但是{length}参数未转换为数字。

vue.js - 消息中未打印有关导入规则(min_value)的参数-Vee-Validate/Vuetify-LMLPHP

最后,在文档中说是min_value被推断。但是当我不提供rules Prop 时,它根本不起作用。来源https://logaretm.github.io/vee-validate/guide/rules.html#rules

最佳答案

发现问题了!

该参数称为min,可以在文档中找到。

extend('min_value', {
    ...min_value,
    message: "Must be higher than {min}"
});

关于vue.js - 消息中未打印有关导入规则(min_value)的参数-Vee-Validate/Vuetify,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60438717/

10-10 04:38