2016-04-16 16 views
13

これは私の最初の日で、型スクリプトを使ってAngular 2をやっていて、簡単なゲッターとセッターサービスを作ろうとしています。私はそれがOKであるべきだと思うよう Typescript getter and setter error

import {Injectable} from "angular2/core"; 

@Injectable() 
export class TodoService { 

    private _todos:Array = []; 

    get todos():Array { 
    return this._todos; 
    } 

    set todos(value:Array) { 
    this._todos = value; 
    } 

} 

は、誰もが活字体のコンパイラは、次のエラーを投げている理由を説明することができます。

ERROR in [default] /Users/testguy/WebstormProjects/angular2-seed/src/app/services/todo-service.ts:6:17 
Generic type 'Array<T>' requires 1 type argument(s). 

ERROR in [default] /Users/testguy/WebstormProjects/angular2-seed/src/app/services/todo-service.ts:8:14 
Generic type 'Array<T>' requires 1 type argument(s). 

ERROR in [default] /Users/testguy/WebstormProjects/angular2-seed/src/app/services/todo-service.ts:12:18 
Generic type 'Array<T>' requires 1 type argument(s). 

答えて

10

は、あなたは本当に、MyClassをすることができ、それを定義しながら、あなたがしたいArrayの種類を言及する必要があるのstring/number(データ型)

コード

export class TodoService { 

    private _todos:Array<MyClass> = []; 

    get todos():Array<MyClass> { 
    return this._todos; 
    } 

    set todos(value:Array<MyClass>) { 
    this._todos = value; 
    } 

} 
+0

いずれかの他のつまずくの場合これには型を配列として定義し、次に<>の内部で配列項目の構造を記述するモデルを作成する必要があります。 –

関連する問題