与Vue 3一起使用时出现Vuelidate TypeError

问题描述

我试图在Vue 3中使用Vuelidate。当我尝试向组件中添加一些验证器时,出现以下错误

LocalDateTime

我相信这与我在Vue实例中使用Vuelidate的方式有关。这是我的main.js文件

.atStartOfDay()

我还将包括组件代码

weekStart

有人知道如何解决此问题吗?如果Vue 3与Vuelidate不兼容,那么有人可以推荐和替代吗?

谢谢

解决方法

在您的示例中,您似乎正在将Vuelidate用于Vue2。Vuelidate用于Vue 3使用的是Alpha(截至撰写本文时2020年9月30日),但您仍然可以使用它。 只需安装以下库。

tf.concat

您仍然可以使用示例中使用的Option API方法,或移至Composition API方法。

npm install @vuelidate/core @vuelidate/validators
# or 
yarn add @vuelidate/core @vuelidate/validators

我还没有尝试过,但是希望对您有帮助。

直到正式投入生产之前,您可以从以下链接中找到更多信息:

编辑: 我忘了提到,如果您继续使用Options API方法,则需要将import { ref } from 'vue' import { useVuelidate } from '@vuelidate/core' import { required,email } from '@vuelidate/validators' export default { setup () { const email = ref('') const rules = { email: { required,email } } const $v = useVuelidate(rules,{ email }) return { email,$v } } } 中的import语句更改为以下内容:

main.js