2016-12-30 5 views
1

私は角2を研究します。私は親コンポーネントのコンポーネントにデータを転送するタスクに直面しました。公式ドキュメントは@入力を使用するように書かれています。しかし、なぜ角2の開発者は、 @ INPUTを使わないで転送しなかったのはなぜでしょうか?@Inputを追加する理由は何ですか?説明のドキュメントではわかりません角度2の入力デコレータが必要な理由

+0

こちらをご覧ください:http://stackoverflow.com/questions/41318575/angular-2-typescript-output-or-put-output/41319049#41319049 – Milad

答えて

2

@Inputデコレータを使用してコンポーネントの入力を定義します。コンポーネントテンプレートの

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

@Component({ 
    selector: 'user-profile', 
    template: '<div>{{user.name}}</div>' 
}) 
export class UserProfile { 
    @Input() user; 
    constructor() {} 
} 
0

バインディングのように:

<user-profile [user]="currentUser"></user-profile> 

だから、あなたは@Inputは、ユーザーへの結合を追加する必要があります。例えば、コンポーネントの場合

は、そのユーザーに関する情報をレンダリングするために、ユーザーの引数を必要とします[inputProp]="someValue"は、@Input() inputProp;または一致する名前のHTML要素のネイティブプロパティに対してのみ許可されます。

私は推測しているが、2つの説明は性質が明示的にする必要がある場合、これはより効率的なコードに

  • より良いサポートを可能にする、より効率的なコードまたはコードの生成

    • 私の心に来てツールの場合 これにより、ツールでコード内のエラーをチェックしたり、テンプレートを書くときにオートコンプリートを提供したりすることができます。

  • 関連する問題