TypeError: obj[key].includes is not a function
TypeError: obj[key].includes is not a function
这是请求(更新):
this._service.getPeople().subscribe((response) => {
this.people = response;
});
这是方法:
filterIt(arr: any, searchKey: any) {
return arr.filter((obj: any) => {
return Object.keys(obj).some((key) => {
return obj[key].includes(searchKey);
});
});
}
我想要的结果是过滤了table行,但是我得到的是:
TypeError: obj[key].includes 不是函数
必须知道的是,此代码与一组硬编码的对象完美配合,但是当我使用服务 (http.get) 从后端获取数据时,该服务工作正常并且 returns a JSON 与 dat 但我仍然收到错误。如有任何帮助,我们将不胜感激!
我正在使用 Typescript 2.7.2、Angular 6 和 MDBootstrap 6.2.2(Angular).
我自己找到了答案,问题是我有一个属性为空,这就是导致错误的原因,所以我只是转换了下面的方法,它就像魅力一样!我希望这对某人有所帮助。
filterIt(arr: any, searchKey: any) {
return arr.filter((obj: any) => {
return Object.keys(obj).some((key) => {
if (obj[key] !== null) {
const tempKey = obj[key].toString().toLowerCase();
const tempSearch = searchKey.toLowerCase();
return tempKey.includes(tempSearch);
}
});
});
}
这是请求(更新):
this._service.getPeople().subscribe((response) => {
this.people = response;
});
这是方法:
filterIt(arr: any, searchKey: any) {
return arr.filter((obj: any) => {
return Object.keys(obj).some((key) => {
return obj[key].includes(searchKey);
});
});
}
我想要的结果是过滤了table行,但是我得到的是:
TypeError: obj[key].includes 不是函数
必须知道的是,此代码与一组硬编码的对象完美配合,但是当我使用服务 (http.get) 从后端获取数据时,该服务工作正常并且 returns a JSON 与 dat 但我仍然收到错误。如有任何帮助,我们将不胜感激!
我正在使用 Typescript 2.7.2、Angular 6 和 MDBootstrap 6.2.2(Angular).
我自己找到了答案,问题是我有一个属性为空,这就是导致错误的原因,所以我只是转换了下面的方法,它就像魅力一样!我希望这对某人有所帮助。
filterIt(arr: any, searchKey: any) {
return arr.filter((obj: any) => {
return Object.keys(obj).some((key) => {
if (obj[key] !== null) {
const tempKey = obj[key].toString().toLowerCase();
const tempSearch = searchKey.toLowerCase();
return tempKey.includes(tempSearch);
}
});
});
}