当前位置:  开发笔记 > 前端 > 正文

Angular 2 @Output什么都不做

如何解决《Angular2@Output什么都不做》经验,为你挑选了1个好方法。

我正在尝试构建一个发出自定义事件的组件.我不确定为什么没有触发事件.如果我查看浏览器开发人员工具,我可以看到事件附加到元素.

我甚至尝试创建角度文档提供的小示例:https://angular.io/docs/ts/latest/api/core/Output-var.html但没有运气.

这是小代码:

import {Component} from "angular2/core";
import {Directive} from "angular2/core";
import {Output} from "angular2/core";
import {EventEmitter} from "angular2/core";
import {bootstrap}    from "angular2/platform/browser";

@Directive({
  selector: 'interval-dir',
})
class IntervalDir {
  @Output() everySecond = new EventEmitter();
  @Output('everyFiveSeconds') five5Secs = new EventEmitter();
  constructor() {
    setInterval(() => this.everySecond.emit("event"), 1000);
    setInterval(() => this.five5Secs.emit("event"), 5000);
  }
}
@Component({
  selector: 'app',
  template: `
    
    
  `,
  directives: [IntervalDir]
})
class App {
  everySecond() { console.log('second'); }
  everyFiveSeconds() { console.log('five seconds'); }
}
bootstrap(App);

没有抛出错误,也没有console.log.

注意:我正在使用角度2 - beta0

我错过了什么吗?谢谢



1> alexpods..:

不要再将kebab-case用于活动和财产.使用camelCase:

@Component({
  selector: 'app',
  template: `
    
  `,
  directives: [IntervalDir]
})
class App { /* ... */ }

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有