2015-12-22 69 views
0

我需要定义一个函数我的角度2应用程序。我尝试使用EventEmitter来完成它,并在npm服务器中给出下面的错误。角度2错误TS2300:重复标识符

[0] app/classes/sidekik.component.ts(15,2): error TS2300: Duplicate identifier 'hit'.

[0] app/classes/sidekik.component.ts(16,2): error TS2300: Duplicate identifier 'hit'.

这之前,我尝试定义不EventEmitter函数,它给了

angular2.dev.js:23524 EXCEPTION: TypeError: emitter.subscribe is not a function in [heroes in [email protected]:6]

这是我的代码

sidekik.component.ts

import {Component, EventEmitter} from 'angular2/core'; 


@Component({ 
    selector:'sidekik', 
    outputs: ['hit'], 
    inputs: ['define'], 
    template: ` 
     <side (click) = "hit(define)"></side> 
    `, 

}) 

export class SideKikComponent{ 
    hit = new EventEmitter(); 
    hit(define:string){ 
     console.log(define); 
    } 
} 

任何人都可以帮助我呢?

回答

0

不知道什么是你想在这里做的,但这里是工作plunker

我注释掉几行,所以当你点击测试,它会调用打功能。

import {Component, EventEmitter} from 'angular2/core'; 

@Component({ 
    selector:'sidekik', 
    // outputs: ['hit'], 
    // inputs: ['define'], 
    template: ` 
     <div (click) = "hit($event)">test</div> 
    ` 
}) 
export class SideKikComponent{ 
    // hit = new EventEmitter(); 
    hit(define:string){ 
     console.log(define); 
    } 
}