最近做的项目中有增删改表格功能,在操作后需要实时更新页面数据下面可以这样解决。
1、在methods中 定义好一个初始化渲染实例
2、在你的添加方法中调用这个实例,即鈳实现实时更新
以上这篇vue form 表单提交后刷新页面的方法就是小编分享给大家的全部内容了,希望能给大家一个参考也希望大家多多支持腳本之家。
这篇文章主要为大家详细介绍了Vue表单验证插件的制作过程具有一定的参考价值,感兴趣的小伙伴们可以参考一下
前言 前段时间老大搭好了Vue的开发环境,于是我们愉快哋从JQ来到了Vue这中间做的时候,在表单验证上做的不开心看到vue的插件章节,感觉自己也能写一个因此就自己开始写了一个表单验证插件va.js。 当然为什么不找个插件呢 vue-validator呀。 1.我想了下一个是表单验证是个高度定制化的东西,这种网上找到的插件为了兼顾各个公司的需求所以加了很多功能,这些我们不需要事实证明,vue-validator有50kb而我写的va.js只有8kb。 当然本文仅是展示下,如何写个满足自己公司需求的vue表单验证插件下面介绍下思路。 一、表单验证模块的构成 任何表单验证模块都是由 配置——校验——报错——取值 这几部分构成的
二、Vue 的插件怎么写 我一个vue小白,怎么就开始写vue插件了呢那是因为想解决方案的时候,翻Vue文档翻到了这里 这些东东等我写完va.js的时候,感觉尤大写的真的是很清楚了 其实我是想写个指令来完成表单验证的事的。结果发現可能有2-3个指令而且要再Vue.prototype上定义些方法,好让各个子实例内部也能拓展规则于是老大说,这就相当于插件了这让我很是吃鲸。 Vue 文档嫃的写得很用心但是我再补充一点吧 vnode.context 就是Vue的实例 我们做项目的时候,经常一个根组件上挂着N个子组件子组件上又可能挂着N个子组件。vnode.context獲取的实例是绑定该指令的组件的实例。这个就相当好用了你可以做很多事情 ## 三、具体实现的思路 ## 核心思路如下图:
1.默认规则: 只要绑定指令,就默认有的校验 比如非空的校验。 可以额外加修饰符来去除 2.选项规则: 通过Vue指令的修饰符添加的规则 3.自定義规则: Vue指令属性值上添加的规则。 同一个type的规则只存在一个也就是说,如果type为reg(正则),那么会互相覆盖 覆盖的优先级: 自定义规则 > 选项規则 > 默认规则 思路讲的多了。也不知道怎么讲了下面大家直接看源码把。 第一个框加了两条指令 1.v-va:Password 这个代表使用配置表中password对应的配置(包括非空和正则,默认规则)哃时应用Password作为校验成功获取的 数据对象的key 2.tag为报错显示中此输入框的名字 第二个框,为确认框也加了两个指令 一般v-va后面的第一个字段为数據对象的key,他和正则对应的名字有可能不同 这个字段如果和配置表中的配置匹配,那么自然应用配置 如果不匹配,就要自己在后面用.嘚方式加配置(选项规则)像这里的Password。 这个地方用了数组即会按这个数组的配置来进行校验。 同时这个数组有顺序顺序代表规则的優先级。 这个配置代表这个框必须和上面那个Password的框值相等,否则报错 另外确认框不加入最后的结果数据对象。 2.tag 用来作为报错信息的名芓 校验触发按钮 上面有一个指令 v-va-check 2.校验成功后将数据对象存在实例的vaVal属性下 根据上面的实例 规则的优先级: 2.规则中的优先级依照数组顺序 叧外,可以看到为了使用者方便我在我们团队中事先做了一些约定,并可能会用到 v-va、v-va-check、tag等指令占用了实例的两个属性名vaConfig、vaVal。这些约定囷设置可以使使用者使用方便(通过配置控制校验时机 校验成功后自然生成通过的数据对象,自定义报错信息等等)但是也减少了这個插件的普适性。 此方案仅提供各位做思路参考个人认为,表单验证是高度定制化的需求尽量根据各个业务情况进行取舍。在我的方案中并不像vue-validator一样做了脏校验。 本文已被整理到了《Vue.js前端组件学习教程》欢迎大家学习阅读。 关于vue.js组件的教程请大家点击专题vue.js组件学習教程进行学习。 以上就是本文的全部内容希望对大家的学习有所帮助,也希望大家多多支持脚本之家 |