2016-04-29 8 views
1

コンポーネントに対してexportAsプロパティが定義されていますか。 コンポーネントのメソッドにアクセスするにはどうすればよいですか? 私は、この例angular2コンポーネントでexportAsを使用しようとします。

<my-app #my="myApp"> 
loading... 
</my-app> 


<button (click)="my.displayMessage()" class="ui button"> 
    Display popup for message element 
</button> 

ここで動作するように想定されていないコンポーネントクラス

import {Component} from 'angular2/core' 

@Component({ 
selector: 'my-app', 
providers: [], 
template: ` 
    <div> 
    <h2>Hello {{name}}</h2> 

    </div> 
    `, 
    directives: [], 
    exportAs: "myApp" 
}) 
export class App { 
    constructor() { 
    this.name = 'Angular2' 
    } 

    displayMessage():void { 
    console.log('called from component') 
    } 
} 
+0

動作する必要があること。何が問題ですか? –

+0

ログが表示されません。エラーは表示されません – Antonio

+1

なぜ 'exportAs'が必要ですか? '#my =" myApp "の代わりに'#my'と書いて同じことをすることができます。 –

答えて

1

EXPORTASのようなものを探しているかもしれない

は、ディレクティブのために使用され、以下を参照してくださいhttp://plnkr.co/edit/IlLtBY7Ic9yKiRIpjukf?p=preview

@Directive({ 
    selector: "div", 
    exportAs: "myDiv" 
}) 
class MyDiv { 

    constructor(private element: ElementRef, private renderer: Renderer) { 
    } 

    toUpper() { 
    return this.renderer.setElementStyle(this.element.nativeElement, "text-transform", "uppercase"); 
    } 

    toLower() { 
    return this.renderer.setElementStyle(this.element.nativeElement, "text-transform", "lowercase"); 
    } 

    reset() { 
    return this.renderer.setElementStyle(this.element.nativeElement, "text-transform", ""); 
    } 
} 
関連する問題