内容简介:在写项目时,需要编写一个组件,根据用户选择的单选框返回值,就像组件的双向绑定。组件的双向绑定就是子组件接受父组件的数据,父组件监听子组件的事件来修改自己的值.暴露一个stateChange属性,当state值变化时,就把state值发射给父组件。
在写项目时,需要编写一个组件,根据用户选择的单选框返回值,就像组件的双向绑定。
组件的双向绑定就是子组件接受父组件的数据,父组件监听子组件的事件来修改自己的值.
子组件
定义事件发射器
@Output('stateChange') instrumentStateChange = new EventEmitter<number>();
暴露一个stateChange属性,当state值变化时,就把state值发射给父组件。
定义输入属性
@Input('state') set instrumentState(state: number) { this.instrumentStateChange.emit(state); this._instrumentState = state; }
定义一个输入属性,当他的值变化时,就用时间发射器将值发射出去
父组件
<app-instrument-state [state]="state" (stateChange)="changeState($event)"></app-instrument-state> <p>当前状态:{{state}}</p>
定义一个属性传输数据,一个方法修改属性值
changeState(event: any) { this.state = event; }
效果:
双向绑定语法糖
双向绑定语法 [(state)]=state 等价于 => [state]=state (stateChange)="state=$event"
采用双向绑定语法,就不用定义监听的函数了,方便使用.
<app-instrument-state [(state)]="state"></app-instrument-state> <p>当前状态:{{state}}</p>
这样写效果也是一样的.
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Charlotte's Web
E. B. White / Scholastic / 2004 / USD 0.01
This is the tale of how a little girl named Ferm, with the help of a friendly spider, saved her pig, Wilbur, from the usual fate of nice fat little pigs.一起来看看 《Charlotte's Web》 这本书的介绍吧!