计算属性在子父组件中的使用

先简单的介绍下业务,项目是SPA应用,列表数据打开详情时,在详情页中的子组件需要得到父组件中的动态数据(请求返回的数据),然后在子组件中展示,那么,如果使用this.$parent.data的方式,只能获取到父组件中定义的静态数据。如何获取到父组件中请求到的动态数据呢?先看下官网对计算属性的定义:

Paste_Image.png

计算属性实时追踪它的相应依赖,依赖关系值发生变化,对应的计算属性值也会发生变化。

看下项目中的错误的例子:
父组件:

Paste_Image.png

定义了一个info数据对象,里面初始的name值为11,在响应当前界面时,通过route去修改info对象的值。
子组件:

Paste_Image.png

当父组件响应时,我们已经通过route去修改了info数据对象的值,但是如果通过这种方式子组件调用父组件的数据,只会得到父组件初始化定义的静态值。
子组件添加计算属性:

Paste_Image.png

通过计算属性的方式,子组件会监听父组件中name的值,一旦父组件中info数据对象的name值发生变化,子组件也能快速的得到相应后的值。
vue官网不建议在组件中直接引用父组件的数据,建议还是直接使用props的方式向子组件传递数据,好吧,如果觉得抽象不好理解,那么看下效果图吧。

22.gif
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,993评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,779评论 18 399
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,974评论 6 342
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,602评论 25 708
  • 近年来,砍杀医生事件频发,已有多起医生被患者家属砍杀身亡事件。每当网上爆出这样的事我都倍感寒心,又发生这样的事了。...
    辰琳儿阅读 336评论 0 0