2016-04-16 9 views
13

ठीक है यह मेरा पहला दिन टाइपोग्राफी का उपयोग करके कुछ कोणीय 2 कर रहा है और मैं एक साधारण गेटर और सेटर सेवा बनाने की कोशिश कर रहा हूं।टाइपस्क्रिप्ट गेटर और सेटर त्रुटि

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

तो किसी भी एक किसी और stumbles इस पर आपको प्रकार को ऐरे के रूप में परिभाषित करने की आवश्यकता है और उसके बाद <> एक वर्ग बनाएं जो एक मॉडल है जो सरणी आइटम की संरचना का वर्णन करता है। –

संबंधित मुद्दे