复杂表单问题
来源:1-1 导学
Jace_qiang
2021-12-09
我有一个复杂的表单如下图,里面要做一些逻辑校验应该怎么去实现比较好呢,
我想到的是有2个方案:
方案1:整个页面用el-form包裹,这样的话怎么是实现每一个组件里面表单的校验呢
方案2:每个组件用一个el-form包裹,然后通过在父组件通过用ref的方式访问子组件的表单校验方法,子组件通过defineExpose返回对应的校验方法,然后数据也通过defineExpose返回,父组件合并数据
我们这个项目中目前没有用到复杂的表单,如果可以的话,建议老师也加一下
写回答
1回答
-
Sunday
2021-12-09
你好
首先对于这种功能必然要通过一个form表单包裹,这会让表单校验更加可控。
那么问题就是如何实现不同组件的表单校验。
实现表单校验的核心点主要有两个:
1是表单数据怎么存放
2是表单检验规则怎么存放
如果你这里使用了el 的话,那么 表单数据与检验规则必须要同时在 父子组件中都要被访问,来回传递未免过于复杂,所以可以把这两个数据都放入到vuex中。
那么一旦放入到vuex中,所涉及到的点就是数据变更时的复杂操作,这个只需要插接v model 即可,复杂度相对可控。032021-12-10
相似问题