typescript - Angular 4 - .filter er ikke en funksjon
Jeg har denne koden:
transform(searchData: Array<vw_WebSiteCourseSearch>, searchResultContentType: string) {
if (searchData == undefined) {
return;
}
return searchData.filter((item) => item.ContentType == searchResultContentType);
}
Min konsoll skriver ut:
ERROR TypeError: searchData.filter is not a function
at FilterCountPipe.webpackJsonp.../../../../../src/app/Common/pipes/filterCount.pipe.ts.FilterCountPipe.transform (filterCount.pipe.ts:19)
Jeg prøvde å legge til import fra rxjs/add/operator/filter, men det løste det ikke. Noen ideer om hvordan man kan fikse det?
Takk
Svar #1
Hvis searchData er null (eller undefined), bør du få en feil som
TypeError: cannot read property filter of null // or undefined
Som @OscarPaz tenkte, filter is not a function kastes fordi den mottatte searchData ikke er et array (men fortsatt definert og ikke null).
Svar #2
Bare endre Array til array. Den første er et objekt og den andre er en array. Du kan få mer informasjon om ``filter` her [1].
[1] : https://alligator.io/js/filter-array-method/
