2017-07-09 10 views
-1

コードでこのクラスでアクセスすることはできません私はあなたがより良い、このようなあなたの変数を宣言することだと思い_defaultColorプロパティプライベートプロパティは、角2つの

+0

あなたはどこからでも 'ngOnInit'を自分で呼び出していますか? –

+1

@ScottMarcusメソッドレベルではなくクラスレベルで宣言されている場合は、ローカル変数ではなくインスタンスプロパティです。 –

+0

実行しているコードは何ですか、何が起こると予想されますか、代わりに正確に(すべての出力を理解するために)何が起こりますか? –

答えて

1

にアクセスすることはできません

export class HighlightDirective implements OnInit { 
    private _defaultColor: 'green'; 

    ngOnInit():any { 
     console.log(this._defaultColor); 
    } 
} 

下回っています。

private _defaultColor: string = 'green'; 
0

これは原因で構文エラーが発生しました。値ではなく変数のタイプとして​​を割り当てています。

private _defaultColor: string = 'green';に変更すると、その問題が解決されます。もう一つ言わなければならないのは、AOTを使用するときにテンプレートから変数privateにアクセスできないということです。したがって、それが要件の場合は、publicに変更するか削除する必要があります(指定されていない場合はデフォルトでpublicになるため)。

関連する問題