vue props传值后watch事件未触发的问题

简介: vue props传值后watch事件未触发的问题

父组件传值,子组件监听,明明很简单的一个事情,硬是卡了许久(毕竟不是专业搞前端的,还是吃亏在学识浅陋)。也和自己钻牛角尖有关,想自己解决问题。


早期我写过一篇vue组件传值的文章,传值方式是这样的:


  


官网的简单实例也是这样的:


  


用中括号包含参数即可,至于参数是什么类型,你传值的时候给就行了,用的时候直接用。因为JS是弱类型语言,这块可以不指定参数类型。


当然,也可以指定,今天遇到的问题就在于这个指定了参数类型。先看官网对于参数类型的描述:


   


然后是做法:


    


下午的卡壳就在这个type上, 之前写js习惯了弱类型var的运用,不太习惯去指定这里的type,导致传递了一个对象没有被接收。无语了~


知道为什么以后事情做起来就容易很多了:


     


不纠结类型, 直接传过来就完事,怎么用我肯定知道,毕竟是自己写的参数。这样的好处是在配合watch事件使用时贼方便,哪怕你给子页面赋值报错了,也没事,改正就好了,重点是什么,是这样做watch事件不会因为类型错误而无法触发!!这个坑太深.... 正常来讲参数只要传了,变化了,watch事件时可以监听到的,但是我这里类型给错了直接导致watch事件不触发,页面也不报错,得硬看代码逐行调试才知道为什么。所以说有时候报错是好的, 错误信息能帮助你定位问题,而最可怕的问题反而是什么错也没有,功能出不来,这真的令人抓狂。


当然了, 参数是否指定类型以及是否给予默认值,这个得由开发者来决定,有时候还要看项目具体情况,我这里只是吐槽一下刚刚踩到的坑。网上也有其他的一些诸如watch事件不触发的问题,但我想估计没我这个坑, 可能有的人也遇到类似的问题吧。


PS:楼主邮箱 tccwpl@163.com

目录
打赏
0
0
0
0
3
分享
相关文章
管理数据必备;侦听器watch用法详解,vue2与vue3中watch的变化与差异
一篇文章同时搞定Vue2和Vue3的侦听器,是不是很棒?不要忘了Vue3中多了一个可选项watchEffect噢。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
在 Vue 中使用 computed 和 watch 时,性能问题探讨
本文探讨了在 Vue.js 中使用 computed 计算属性和 watch 监听器时可能遇到的性能问题,并提供了优化建议,帮助开发者提高应用性能。
Vue 中 computed 和 watch 的差异
Vue 中的 `computed` 和 `watch` 都用于处理数据变化,但使用场景不同。`computed` 用于计算属性,依赖于其他数据自动更新;`watch` 用于监听数据变化,执行异步或复杂操作。
|
9月前
|
vue3,使用watch监听props中的数据
【10月更文挑战第3天】
3251 2
vue-day03 v-on事件处理,表单输入绑定
文章介绍了Vue.js中事件处理和表单输入绑定的使用。包括v-on指令监听事件、事件处理方法、内联处理器、访问原生DOM事件、事件修饰符、按键修饰符、系统修饰符、exact修饰符和鼠标按钮修饰符。同时,讲解了如何使用v-model实现单行文本、多行文本、复选框和单选按钮的双向数据绑定,并提供了修饰符的使用示例。这些特性使得Vue.js在处理表单输入和事件时更加灵活和方便。
vue-day03 v-on事件处理,表单输入绑定
|
9月前
|
Vue组件点击事件不触发的问题,添加事件修饰符native解决
Vue组件点击事件不触发的问题,添加事件修饰符native解决
874 0
vue中computed计算属性、watch侦听器、methods方法的区别以及用法
vue中computed计算属性、watch侦听器、methods方法的区别以及用法
488 0
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
191 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等