vue 子组件watch监听不到prop的解决


Posted in Javascript onAugust 09, 2020

问题描述

在vue项目中,父组件通过prop给子组件传值时,如果prop值是从服务器端获取,则父组件可能会传给子组件一个默认值(服务端数据还未及时获取),那么,我们就需要实时watch这个prop值,一旦prop值有更新,将立即通知子组件更新。

解决方案

watch: {
  levelDetail: {
   immediate: true, // 很重要!!!
   handler (val) {
    this.levelPersonal = !val ? {} : val
    // console.log('action Value:', val, this.levelPersonal)
   }
  }
 },

官方文档

vue-watch 参考文档

补充知识:vue父组件props参数太大时子组件created取不到数据-解决方法

问题:

父组件调用子组件:

<mk-form :list="formList" :formvalue="formvalue"></mk-form>

其中的formList数据是用ajax调用的,数据比较大,应该有些延迟

子组件的created中调用props时,输出的是默认数据:

vue 子组件watch监听不到prop的解决

输出:

vue 子组件watch监听不到prop的解决

解决方法:

第一种:加上 v-if 来判断数据是佛加载完成了,加载完了再渲染:

<mk-form v-if="formList!=null" :list="formList" :formvalue="formvalue"></mk-form>

第二种:用 setTimeout 来做延迟,但这样的方法不准确,应该视情况使用

其实两种方法都应该视情况来使用。

以上这篇vue 子组件watch监听不到prop的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
滚动经典最新话题[prototype框架]下编写
Oct 03 Javascript
Javascript 文件夹选择框的两种解决方案
Jul 01 Javascript
jquery animate图片模向滑动示例代码
Jan 26 Javascript
js事件冒泡实例分享(已测试)
Apr 23 Javascript
jquery中 $.expr使用实例介绍
Jun 09 Javascript
js脚本实现数据去重
Nov 27 Javascript
node.js中的path.isAbsolute方法使用说明
Dec 08 Javascript
JavaScript中Array的实用操作技巧分享
Sep 11 Javascript
利用JS实现简单的日期选择插件
Jan 23 Javascript
JavaScript简单实现关键字文本搜索高亮显示功能示例
Jul 25 Javascript
如何利用ES6进行Promise封装总结
Feb 11 Javascript
webpack3升级到webpack4遇到问题总结
Sep 30 Javascript
vue 重塑数组之修改数组指定index的值操作
Aug 09 #Javascript
bootstrap-closable-tab可实现关闭的tab标签页插件
Aug 09 #Javascript
bootstrap实现tab选项卡切换
Aug 09 #Javascript
vue动画—通过钩子函数实现半场动画操作
Aug 09 #Javascript
js利用iframe实现选项卡效果
Aug 09 #Javascript
解决vue 退出动画无效的问题
Aug 09 #Javascript
在vue中使用console.log无效的解决
Aug 09 #Javascript
You might like
php中几种常见安全设置详解
2010/04/06 PHP
PHP5常用函数列表(分享)
2013/06/07 PHP
php获取汉字首字母的函数
2013/11/07 PHP
ThinkPHP框架实现session跨域问题的解决方法
2014/07/01 PHP
php中将一个对象保存到Session中的方法
2015/03/13 PHP
jquery 选择器引擎sizzle浅析
2013/02/06 Javascript
jQuery拖拽div实现思路
2014/02/19 Javascript
编程语言JavaScript简介
2014/10/16 Javascript
Jquery中offset()和position()的区别分析
2015/02/05 Javascript
javascript实现的简单的表单验证
2015/07/10 Javascript
.NET微信公众号开发之创建自定义菜单
2015/07/16 Javascript
Javascript中for循环语句的几种写法总结对比
2017/01/23 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
2017/06/12 jQuery
深入解析Vue源码实例挂载与编译流程实现思路详解
2019/05/05 Javascript
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
Python实现的维尼吉亚密码算法示例
2018/04/12 Python
python3.6实现学生信息管理系统
2019/02/21 Python
12个Python程序员面试必备问题与答案(小结)
2019/06/24 Python
python按比例随机切分数据的实现
2019/07/11 Python
python实现从本地摄像头和网络摄像头截取图片功能
2019/07/11 Python
python gdal安装与简单使用
2019/08/01 Python
python获取指定日期范围内的每一天,每个月,每季度的方法
2019/08/08 Python
TensorFlow基本的常量、变量和运算操作详解
2020/02/03 Python
Python+Kepler.gl轻松制作酷炫路径动画的实现示例
2020/06/02 Python
Python调用飞书发送消息的示例
2020/11/10 Python
使用Python爬取Json数据的示例代码
2020/12/07 Python
英国的屈臣氏:Boots博姿
2017/12/23 全球购物
儿媳婚宴答谢词
2014/01/14 职场文书
应届优秀本科大学毕业生自我鉴定
2014/01/21 职场文书
3.12植树节活动总结2014
2014/03/13 职场文书
三年级小学生评语
2014/04/22 职场文书
军训阅兵新闻稿
2015/07/17 职场文书
初二数学教学反思
2016/02/17 职场文书
Python保存并浏览用户的历史记录
2022/04/29 Python
SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询
2022/05/25 SQL Server
ubuntu开机后ROS程序自启动问题
2022/12/24 Servers