Angular 2 自定义 双向绑定 属性

Angular双向绑定详解
本文介绍了一个Angular组件中实现双向绑定的方法。通过定义特殊的输入和输出属性,并利用[(ngModel)]指令,可以实现在输入框中输入的内容能实时显示在页面上。这种方式常用于表单元素的状态同步。
import { Component, OnInit, Output, Input, EventEmitter } from '@angular/core';

@Component({
    selector: 'twoway',
    template: `
       <input [(ngModel)]="username">
       <p>Hello {{username}}!</p>
    `
})
export class TwoWayComponent implements OnInit {
    constructor() { }

    usernameValue: string;
    @Output() usernameChange = new EventEmitter();

    @Input()
    get username() {
        return this.usernameValue;
    }
    set username(val) {
        this.usernameValue = val;
        this.usernameChange.emit(this.usernameValue);
    }

    ngOnInit() {

    }
}

使用时,就可以通过[(username)]=“你的当前属性” 进行双向绑定了。属性名 + 后缀 Change是一个约定的固定写法。

转载于:https://www.cnblogs.com/sgciviolence/p/6552987.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值