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 相关文章推荐
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
Jul 11 Javascript
jQuery表单验证插件formValidator(改进版)
Feb 03 Javascript
JS正则表达式大全(整理详细且实用)
Nov 14 Javascript
jQuery动态显示和隐藏datagrid中的某一列的方法
Dec 11 Javascript
Jquery Ajax方法传值到action的方法
May 11 Javascript
JQuery右键菜单插件ContextMenu使用指南
Dec 19 Javascript
AngularJS实现标签页的两种方式
Sep 05 Javascript
Jquery表单验证失败后不提交的解决方法
Oct 18 Javascript
JavaScript中省略元素对数组长度的影响
Oct 26 Javascript
JS+HTML实现的圆形可点击区域示例【3种方法】
Aug 01 Javascript
微信小程序开发问题之wx.previewImage
Dec 25 Javascript
Vue 实例事件简单示例
Sep 19 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里的JS打印函数
2006/10/09 PHP
fleaphp下不确定的多条件查询的巧妙解决方法
2008/09/11 PHP
php 数组的一个悲剧?
2011/05/11 PHP
php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比
2015/04/14 PHP
PHP使用栈解决约瑟夫环问题算法示例
2017/08/27 PHP
PHP通过文件路径获取文件名的实例代码
2018/10/14 PHP
javascript中不提供sleep功能如何实现这个功能
2014/05/27 Javascript
JavaScript如何调试有哪些建议和技巧附五款有用的调试工具
2015/10/28 Javascript
jquery获取文档高度和窗口高度汇总
2016/01/25 Javascript
jQuery实现鼠标经过时高亮,同时其他同级元素变暗的效果
2016/09/18 Javascript
KnockoutJS 3.X API 第四章之表单textInput、hasFocus、checked绑定
2016/10/11 Javascript
jQuery与JavaScript节点创建方法的对比
2016/11/18 Javascript
jQuery实现判断控件是否显示的方法
2017/01/11 Javascript
ES6 javascript中class类的get与set用法实例分析
2017/10/30 Javascript
JS选取DOM元素常见操作方法实例分析
2018/12/10 Javascript
Seajs源码详解分析
2019/04/02 Javascript
JS Array.from()将伪数组转换成数组的方法示例
2020/03/23 Javascript
Python自动化运维和部署项目工具Fabric使用实例
2016/09/18 Python
apache部署python程序出现503错误的解决方法
2017/07/24 Python
Python实现Pig Latin小游戏实例代码
2018/02/02 Python
Python OpenCV处理图像之图像像素点操作
2018/07/10 Python
PYTHON如何读取和写入EXCEL里面的数据
2019/10/28 Python
Python多线程正确用法实例解析
2020/05/30 Python
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
利用CSS3实现的文字定时向上滚动
2016/08/29 HTML / CSS
关于赌博的检讨书
2014/01/24 职场文书
大学生毕业自我鉴定范文
2014/02/03 职场文书
广告传媒专业应届生求职信
2014/03/01 职场文书
高中学生期末评语
2014/04/25 职场文书
廉洁家庭事迹材料
2014/05/15 职场文书
爱牙日活动总结
2014/08/29 职场文书
2014年度工作总结报告
2014/12/15 职场文书
给校长的建议书作文500字
2015/09/14 职场文书
幼儿园大班教学反思
2016/03/02 职场文书
Vue实现下拉加载更多
2021/05/09 Vue.js
微信小程序结合ThinkPHP5授权登陆后获取手机号
2021/11/23 PHP