2016-07-19 7 views
1

以下はまだ、それがなければならない活字混乱

https://www.typescriptlang.org/docs/handbook/basic-types.html https://www.typescriptlang.org/docs/tutorial.html

言っtypescriptですドキュメントにもかかわらず、

var view: string[]; 
var view: string[] = []; 
let view: string[]; 
let view: string[] = []; 

クラスで働くように見えることはありません

すべてが問題ありません。

export class TextComponent implements OnInit { 

    let view: string[] = [];   

    ngOnInit() { 
    .... 
    } 
} 

または前述の変異体のいずれかが常に

ngOnInit is not defined 

答えて

2

のエラーが発生する理由

は、誰かがあなたがのトップレベルで任意のコードを置くことができない説明してもらえますクラス。コンストラクタまたはメソッドの内部に配置する必要があります。

コンストラクタまたはメソッドの外部でフィールド宣言とメソッド宣言のみが許可されます。

export class TextComponent implements OnInit { 

    view: string[] = [];   

    constructor() { 
     var view: string[]; 
     var view: string[] = []; 
     let view: string[]; 
     let view: string[] = []; 
    }  
    ngOnInit() { 
    .... 
    } 
} 

同じ変数を複数回(コンストラクタ内のコード)宣言しても、これはうまくいきませんでした。あなたのコードで

0

export class TextComponent implements OnInit { 

    let view: string[] = []; 

これはコンパイルエラー(無効な構文)です!コンソールを確認してください。

修正

クラスメンバ初期化子のための正しい構文を使用します

export class TextComponent implements OnInit { 

    view: string[] = []; 

もっと

https://basarat.gitbooks.io/typescript/content/docs/classes.html