Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Generic type 'Array<T>' requires 1 type argument(s). - Angular2

I have been trying to implement a simple ngFor with Angular2 but I don't know what went wrong which lead to error 'Generic TYpe Array requires one argument(s). PLease favour

import { Component } from '@angular/core';


    @Component({
        selector: 'my-app',
        templateUrl:'./app.component.html',                     
    })
    export class AppComponent { 
           clients:Array;
           doctors:Array;
            constructor(){
               this.clients=["Client1", "Client2", "Client3"];
                this.doctors=["Doctor1","Doctor2","Doctor3"];
            }


    }
like image 509
Gayathri Avatar asked Jul 01 '17 19:07

Gayathri


2 Answers

solution 1:

clients: String[]; // if type cant be determined use 'any[]'
    doctors: String[];

solution 2:

clients: Array<String>; // if type cant be determined use '<any>'
    doctors: Array<String>;
like image 199
manideep pabba Avatar answered Oct 19 '22 22:10

manideep pabba


I have not used Angular2, but I believe the solution, since you know the type which the array is going to hold, is to use Array<String> instead of array on its own.

NOTE: what you could do is replace String with the angular2 typename for a string primitive.

like image 28
flmng0 Avatar answered Oct 19 '22 22:10

flmng0