angular组件双向绑定

栏目: 编程语言 · AngularJS · 发布时间: 5年前

内容简介:在写项目时,需要编写一个组件,根据用户选择的单选框返回值,就像组件的双向绑定。组件的双向绑定就是子组件接受父组件的数据,父组件监听子组件的事件来修改自己的值.暴露一个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;
    }

效果:

angular组件双向绑定

双向绑定语法糖

双向绑定语法 [(state)]=state 等价于 => [state]=state (stateChange)="state=$event"

采用双向绑定语法,就不用定义监听的函数了,方便使用.

<app-instrument-state [(state)]="state"></app-instrument-state>
                        <p>当前状态:{{state}}</p>

这样写效果也是一样的.


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人工智能

人工智能

Peter Norvig、Stuart Russell / 姜哲 / 人民邮电出版社 / 2004-6 / 85.00元

《人工智能:一种现代方法》(第2版中文版)以详尽和丰富的资料,从理性智能体的角度,全面阐述了人工智能领域的核心内容,并深入介绍了各个主要的研究方向,是一本难得的综合性教材。全书分为八大部分:第一部分“人工智能” ,第二部分“问题求解” ,第三部分“ 知识与推理” ,第四部分“规划” ,第五部分“不确定知识与推理” ,第六部分“学习” ,第七部分“通讯、感知与行动” ,第八部分“ 结论” 。一起来看看 《人工智能》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具