可以通过创建一个自定义版本的KeyValuePipe来解决这个问题,该版本将保留键和值的类型。
代码示例:
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({name: 'myKeyValue'})
export class MyKeyValuePipe implements PipeTransform {
transform(value: any, args?: any): any {
let result = [];
for (let key in value){
if (value.hasOwnProperty(key)){
result.push({key: key, value: value[key]});
}
}
return result;
}
}
可以在模板中使用它:
{{ item.key }}: {{ item.value }}