美文网首页
angular 1.5.8 项目回顾

angular 1.5.8 项目回顾

作者: 回调的幸福时光 | 来源:发表于2017-11-24 17:50 被阅读18次

父子组件传值


requirement.png

需求

  • 父组件请求接口获取初始数据data
  • 通过binding(<)单向传递给子组件
  • 子组件在click事件后,发送广播,通知父组件更新data
  • 子组件实时更新


子组件在初始化时,在控制器中,用新的变量代替传递的字段

// data为通过binding传递的字段
this.childData = this.data.childData

在子组件的template中使用childData

<div>{{$ctrl.childData}}</div>

此时会有两个问题:

  1. this.childData 在组件初始化之后,延时500ms左右才真正有值。
  2. 不会实时更新

现象归纳

通过binding绑定的data

  • 在template中通过$ctrl.data可以立即获取到;
  • 在controller中通过this.data不能立即获取到,会有延时。

解决方案

  • 建议直接在template中使用$ctrl.data方式。
  • 变化监听
    如果必须在controller中使用this.data方式,可通过变化监听函数$.onChanges()实现。

相关文章

网友评论

      本文标题:angular 1.5.8 项目回顾

      本文链接:https://www.haomeiwen.com/subject/pukfbxtx.html