angular - Typescript getter ve setter hatası


Tamam, bu Angular 2'yi TypeScript kullanarak yapmaya başladığım ilk gün ve basit bir getter ve setter servisi yapmaya çalışıyorum.

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;
  }

}

Typescript derleyicisinin aşağıdaki hatayı neden verdiğini kim açıklayabilir, çünkü bence sorun olmamalı.

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).

Cevap #1

Bir Array tanımlarken hangi türde Array istediğinizi gerçekten belirtmeniz gerekir, MyClass string/number(veri tipi) olabilir

Kod

export class TodoService {

  private _todos:Array<MyClass> = [];

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

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

}

İlgili makaleler