当前位置: 首页 > 编程笔记 >

Angular 2 嵌套组件中的Angular2 @Input和@Output

姚自强
2023-03-14
本文向大家介绍Angular 2 嵌套组件中的Angular2 @Input和@Output,包括了Angular 2 嵌套组件中的Angular2 @Input和@Output的使用技巧和注意事项,需要的朋友参考一下

示例

一个Button指令,该指令接受来指定单击限制,直到禁用该按钮为止。父组件可以通过以下方法监听事件,该事件将在达到点击次数限制时发出:@Input()@Output

import { Component, Input, Output, EventEmitter } from '@angular/core';

@Component({
    selector: 'limited-button',
    template: `<button (click)="onClick()" 
                       [disabled]="disabled">
                   <ng-content></ng-content>
               </button>`,
    directives: []
})

export class LimitedButton {
    @Input() clickLimit: number;
    @Output() limitReached: EventEmitter<number> = new EventEmitter();

    disabled: boolean = false;

    private clickCount: number = 0;

    onClick() {
        this.clickCount++;
        if (this.clickCount === this.clickLimit) {
           this.disabled= true;
            this.limitReached.emit(this.clickCount);
        }
    }
}

使用Button指令并在达到点击限制时提醒消息的父组件:

import { Component } from '@angular/core';
import { LimitedButton } from './limited-button.component';

@Component({
    selector: 'my-parent-component',
    template: `<limited-button [clickLimit]="2"
                               (limitReached)="onLimitReached($event)">
                   You can only click me twice
               </limited-button>`,
    directives: [LimitedButton]
})

export class MyParentComponent {
    onLimitReached(clickCount: number) {
        alert('Button disabled after ' + clickCount + ' clicks.');
    }
}
           

 类似资料:
  • 本文向大家介绍详解Angular2 关于*ngFor 嵌套循环,包括了详解Angular2 关于*ngFor 嵌套循环的使用技巧和注意事项,需要的朋友参考一下 在项目开发中拿到的数据是这样的,要循环遍历出来。可是在ng2中好像不能直接遍历Object 在搜索之后发现了这种方法可以实现。 array-ngfor.ts array-ngfor.html 重点的是这个方法 结果: 以上就是本文的全部内容

  • 我使用window.URL。createObjectURL创建blob:http链接,用于预览img标记中的选定图像: itemPhoto是在组件中定义的字段,在选择图像文件时被分配: 这适用于angular2 RC1,但不再适用于2.0.0。 以下是进入 src 属性的内容: 在阅读了一些其他帖子后,我尝试了以下方法: 然后,以下内容进入 src 属性: 有什么建议吗? 非常感谢 更新:好的,我

  • 我想使用Angular 2中的将Firebase查询的结果绑定到我的模板。这在下面很容易实现。 组件: 模板: 但如果我想使用模板中嵌套的另一个指令来列出子对象的键... 我得到控制台错误, 在我的数据库结构中,是的子级,而是的子级,其中是动态键。因此我无法使用直接路径来访问。 这种嵌套指令的模式在简单迭代本地文件的服务中运行良好。为什么它在这里不起作用对我来说似乎有点模糊。

  • 我正在用angular2编写一个可重用组件。在父组件中,我可以通过将@Input包含在模板中来设置子组件中的值,如下所示: 按照预期,使用< code>{{ button1Text }}将文本插入到子元素中。但是,对于上面的布尔值,该值不会传递到模板中。如果我在子组件的模板中执行< code>{{showButton1}},它将显示< code>true,这是使用< code>@Input装饰器在

  • 我有一个要求,我需要将电话号码绑定到ngModel,只要它存在。我的代码如下: 如果电话号码存在,这很好,但如果不存在,我得到以下错误: 无法读取未定义的属性“full_number” 因此,基于这个SO帖子链接,我尝试了以下内容: 但是,这会导致语法错误。 未捕获错误:模板解析错误 解决此问题的一种方法是使用并再次重复代码集。但是,我应该做些什么来进行内联操作,比如三元条件检查?

  • 本文向大家介绍Angular2开发——组件规划篇,包括了Angular2开发——组件规划篇的使用技巧和注意事项,需要的朋友参考一下 本文集中讲讲笔者目前使用ng2来开发项目时对其组件的使用的个人的一些拙劣的经验。 先简单讲讲从ng1到ng2框架下组件的职责与地位: ng1中的一大特色——指令,分为属性型、标签型、css类型和注释型。其中写在css类以及注释中的组件想必多数人都不会去使用,而属性型指