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

优惠卷网站建设怎么挣钱成都工信部网站

优惠卷网站建设怎么挣钱,成都工信部网站,wordpress网站搜不到,福州品牌网站建设oem此图源自官网 借鉴。 当我们简单单层验证的时候发现是没有问题的#xff0c;但是有的时候可能会涉及到深层prop#xff0c;发现在去绑定的时候就不生效了。例如我们在form单里面循环验证#xff0c;在去循环数据验证。 就如下图的写法了 :proppumplist. i .device… 此图源自官网 借鉴。 当我们简单单层验证的时候发现是没有问题的但是有的时候可能会涉及到深层prop发现在去绑定的时候就不生效了。例如我们在form单里面循环验证在去循环数据验证。 就如下图的写法了 :proppumplist. i .device。切记 在form 单中的数据 是一定要和 绑定的 :model“xxxx” 关联的否则可能会报错Error in mounted hook。 因为element要判断prop传递的值是否合法的话, 就只能用 一个obj 一个key 通过key in obj 这样的方式来判断, 而如果我们不把 要循环或者要绑定的某值yyy 放到 :model 的 xxxx中, form-item在mounted的时候 是拿不到外面this的data的, 所以他无法判断 当前传进来的pumplist到底是谁, 也就没有办法使用key in obj.。 去看一下element-ui的源码, 下面是源码环节: 1.找到packages/form/src/form-item.vue这个文件 2. 我们根据他的报错来分析, 首先他说mounted hook中报错, 那我们就直接来看这个hook做了什么事情: mounted() {if (this.prop) {this.dispatch(ElForm, el.form.addField, [this]); // 这一步不用管let initialValue this.fieldValue; // 取得fieldvalue// 判断fieldvalue是不是数组, 如果是数组则合并if (Array.isArray(initialValue)) {initialValue [].concat(initialValue);}// 给this定义一个initialValue属性Object.defineProperty(this, initialValue, {value: initialValue});this.addValidateEvents();}} 这段代码的第一反应是不是 就取了个值 赋了个值,如果是那就是 有一个盲点就是this.fieldValue这里, 这是一个什么东西呢不知道 去看一下。 computed: {fieldValue() {// 1.拿到当前form的model属性(这里很重要, 要记住这一步)const model this.form.model;if (!model || !this.prop) { return; }// 2.拿到当前form-item的prop属性, // 也就是我们传的那个:proppumplist. index .devicelet path this.prop;if (path.indexOf(:) ! -1) {path path.replace(/:/, .);}// 3.将model和path传给了getPropByPath方法return getPropByPath(model, path, true).v;} }代码翻到fieldValue这里, 发现这是一个computed属性(步骤见注释), 发现最终返回getPropByPath方法的返回结果, 我们接着去看一下这个方法. 我们发现这个方法是在utils/util下的一个方法 有一种眼熟的感觉越看越像js的一个面试题 function getValue(obj, path) {... }const obj { a: { b: { c: 1 } } }getValue(obj, a.b.c); // 1看到这里 我们首先需要明确 这个方法的作用就是 通过嵌套字符串key 拿到key对应的value, 那我们来看一下element是怎么做的。 首先先看第一句代码 let tempObj obj, 这里第一次的obj是谁呢是不是上面传过来的this.form.model啊? 我们来看一下 我们代码中传输的model是什么就可以了要匹配或者包含在内。 我们这里只需要记住, 我们传的是一个对象{ name: ‘’ }好的 我们再来看下一步, path 正则匹配, 最后的结果是keyArr [‘tableData’, 0, ‘name’]下面的代码就是走keyArr的循环了, 这里我们是3次循环, 因为keyArr只有三个元素 我们还是来捋一下 第一次循环, 此时的tempObj是 { name: ‘’ }, key是tableData, key in tempObj?, 很显然是false, 所以直接走了else, 触发了throw new Error 其实看到这里我们就明白了, element在做prop判断的时候, 是通过判断key在不在model中的方式 来判断path是否合法的, 那我们知道这个原理之后, 只需要将我们的代码稍稍改动一下即可。
http://www.dnsts.com.cn/news/24448.html

相关文章:

  • 做网站需要审核资质吗我要推广网
  • 做食品外贸选哪个网站好附近的广告公司电话
  • 汽车之家网站万维网网站备案流程
  • 常州公诚建设项目管理有限公司官方网站中国建设银行网站查余额
  • 福建网站制作做网站需要什么配置的笔记本
  • 泉州有哪些做网站的logo网站设计论文
  • 企业网站的首页设计模板php网站授权
  • ftp两个网站子域名的绑定注册域名以后怎么做网站
  • 怎么制作网站域名网站开发的职位要求
  • 贵阳网站建设服务公司北京城建一建设发展有限公司网站
  • 专门做mod的网站办网站需要多少费用
  • 互联网公司 网站百度竞价和优化的区别
  • 东莞注塑切水口东莞网站建设如何做简单网站首页
  • 重庆建设造价信息网站百度网盟官网
  • 任丘市网站建设长春搜索引擎优化
  • 珠宝网站建商台北wordpress主题 虎嗅网
  • 建设网站卡盟如何在本机搭建wordpress
  • 合肥专业网站制济南网站优化公司
  • 国内ui网站有哪些做app和网站怎样
  • 单页网站在线制作北京seo优化推广
  • postgresql做网站用什么环境wordpress 又拍
  • 展会网站建设建设网站费用多少
  • 建设网站需要域名还有什么企业邮箱登录9951026net
  • 西安网站建设费用广州工程项目
  • 开设计公司客源哪里找宁波seo整站优化软件
  • 做网站最低多少钱网络设计方案书中内容很多
  • 手机网站制作架构深圳网站建设哪个
  • 湖北做网站教程哪家好营销的方法手段有哪些
  • 响应式布局网站案例旅游设计网站
  • 最好的网站开发建设银行网站密码忘记了咋办