我有一个大型应用程序,它使用vee-valify@2.x和Vue@2.7.我们正在过渡到Vue@3,所以我们使用Vue@2.7来编写语法为<script setup lang="ts">的新组件

在旧的组件中,我们用this.$validator.validate()调用表单提交的验证.但是,$validator在<script setup lang="ts">组件中不可访问.我try 在我的新组件中创建一个new Validator()实例并使用它,但它也失败了.

如何设置我的应用程序,以使旧的$validator.validate()个调用正常工作,并使我可以在新的Vue2.7组件中以编程方式运行验证?

我假设我需要创建一个验证器实例并显式地注入它,但我正在努力弄清楚如何:https://vuejs.org/guide/components/provide-inject.html

推荐答案

经过一系列调查,我发现我最好的方法是使用像yup这样的工具进行验证,而不是对任何使用vue2.7语法的组件使用vee-valify.VEE-VALIDATE v4使用YUP,所以如果需要的话,升级到VEE-VALIDATE v4应该会更容易一些.然而,我们可能会 Select 在YUP和VUE之间滚动我们自己的集成,而不是使用vee-valify向前推进.

是的,文档数量:https://www.npmjs.com/package/yup

我使用如下代码将YUP表单验证转换为可以在表单上显示的错误块:Transform Yup validation error into a useable object

Vue.js相关问答推荐

vue3中的转换可以在滑入但不能滑出时工作

如果似乎没有明确使用输入事件,那么发出输入事件有什么作用?

vue3 ssr 不返回纯 html

vue 计算的 ant watch 不会在嵌套属性更改时触发

如何使用 vue.js 获取本地 html 文件?

Vue Table 2 - 自定义过滤器

如何在异步功能上使用 debounce?

如何在 Vue.js 中使用 MaterializeCss?

根据 URL 有条件地隐藏视图组件

如何在 vue 3 脚本设置中使用

Vue-Router 抽象父路由

使用 Vue.js (cdn) 在特定元素上切换显示/隐藏

如何在 Vue 3 中使用 SSR

为什么 vue 文档说 refs 不是响应式的,而实际上它们是响应式的

如何从 vue.js 捕获 Jquery 事件

来自 Vue.js 的 ESLint 插件的消息中的LHS是什么意思?

Vuetify RTL 风格

Vue Cli 3:定义的输出路径

如何在 vuejs 中的基于类的组件中编写计算设置器

Vuetify v-data-table 固定标题不起作用