当前位置: 首页 > wzjs >正文

做黄色网站会受到什么惩罚专业seo外包

做黄色网站会受到什么惩罚,专业seo外包,宁波互联网公司有哪些,包头移动官网网站建设饿了么的表单控件,如果存在自定义组件更改了值,例如在el-from中存在原生input组件很有可能没法触发表单校验,下拉框或者弹框组件仍然是报红边框。 这是因为饿了么的输入框或者下拉框更改值的时候会自动触发表单校验,但是封装过后的…

饿了么的表单控件,如果存在自定义组件更改了值,例如在el-from中存在原生input组件很有可能没法触发表单校验,下拉框或者弹框组件仍然是报红边框。
这是因为饿了么的输入框或者下拉框更改值的时候会自动触发表单校验,但是封装过后的组件无法触发校验表单校验。那么此时可以手动触发饿了么的表单校验。

源码分析

在packages/form/src/form-item.vue中,可以找到addValidateEvents方法,该方法是用来给el-form-item的子组件绑定校验事件的,如下:

addValidateEvents() {const rules = this.getRules();if (rules.length || this.required !== undefined) {this.$on('el.form.blur', this.onFieldBlur);this.$on('el.form.change', this.onFieldChange);}
}

在packages/input/src/input.vue中,可以找到el-input发送el.form.blur和el.form.change事件的代码,这里只贴出el.form.change的代码:

watch: {value(val) {this.$nextTick(this.resizeTextarea);if (this.validateEvent) {this.dispatch('ElFormItem', 'el.form.change', [val]);}}
}

这里用了dispatch方法,该方法的代码在src/mixins/emitter.js中:

dispatch(componentName, eventName, params) {var parent = this.$parent || this.$root;var name = parent.$options.componentName;while (parent && (!name || name !== componentName)) {parent = parent.$parent;if (parent) {name = parent.$options.componentName;}}if (parent) {parent.$emit.apply(parent, [eventName].concat(params));}
}

由此可以看出,要触发el-form的校验,需要el-form-item中的子组件去发布el.form.change或el.form.blur等事件,由el-form-item监听该事件,触发表单校验。

解决方案

方法一:在父页面中直接调用表单的校验方法validateField:

watch: {'passwordForm.newPassword': function() {this.$refs.passwordForm.validateField('newPassword')}
}

方法二:在父页面中发布组件的el.form.change等事件:

<input ref="input" @blur="handleBlur">
<script>
export default {methods: {handleBlur (val) {this.$refs.input.$emit('el.form.blur', val)}}
}
</script>

方法三:在子组件中发布el.form.change等事件,此时无需在父页面中做任何处理,其中dispatch方法直接将上面所说的emitter.js中的代码拷贝过来即可:

export default {methods: {dispatch(componentName, eventName, params) {// ... 从emitter.js中拷贝过来的代码},handleInput (e) {this.$emit('input', e.target.value)this.dispatch('ElFormItem', 'el.form.change', [e.target.value])}}
}

以下是我某项目的解决方法,使用的方法2,即找到el-form-item然后触发el.form.change事件。

 methods: {confirm() {this.$emit("confirm", result);this.$nextTick(() => {parent && parent.$emit("el.form.blur", result); // 重点!触发表单校验 el.form.change, el.form.blurparent && parent.$emit("el.form.change", result); // 重点!触发表单校验});},},// 找到el-form-item元素的代码mounted() {let parent = this.$parent;while (parent) { if (parent.$options.name === "ElFormItem") {this.parent = parent;break;}parent = parent.$parent;}
},

原文博客:非el组件/自定义组件触发el-form的校验
个人博客: 自定义组件触发饿了么表单校验

http://www.dtcms.com/wzjs/60513.html

相关文章:

  • 榆林市建设局网站百度竞价是什么意思
  • 北京赛车网站开发公司网站开发北京公司
  • 门户网站改版搜一搜百度
  • 公司里面php开发一个网站的流程网络营销软件推广
  • 中小企业门户网站的建设方案b站黄页推广
  • 河北网站制作报价重庆seo哪个强
  • 上海营销型网站软文是什么
  • 企石做网站企业站seo外包
  • 长沙网站建设设计有哪些可以推广的平台
  • 常州哪些网站公司做的好处什么都能搜的浏览器
  • 网站建设要经历哪些步骤指数基金定投技巧
  • 好学校平台网站模板百度推广靠谱吗
  • 深圳做网站哪家好公司培训
  • vs网站开发实例百度精准引流推广
  • wordpress文章只允许投稿者浏览重庆seo网站推广优化
  • 广饶网站制作seo怎么做推广
  • 模板网站有利于做seo吗网站推广策划案
  • 泰州做网站价格sem是什么意思中文
  • 建设企业网站是静态还是动态好中国十大互联网公司排名
  • 网站安全建设模板下载培训学校管理制度大全
  • 基于jsp的网站开发的文献短视频怎么赚钱
  • 建网站有哪些文件夹淘宝热搜关键词排行榜
  • seo资源青岛seo推广
  • 学做分类网站电商线上推广渠道
  • 昆明网站代理企业网络营销青岛
  • 中山精品网站建设策划关于进一步优化
  • 网站建设 好的公司南宁seo排名首页
  • 做网站要注意哪些问题专业网站优化排名
  • 学做网站是什么专业网络推广营销策划方案
  • 网站制作哪家大某产品网络营销推广方案