我有一个具有以下属性的菜单类。
menu.ts
export class Menu {
SectionId:string;
SectionName:string;
ParentSectionId:number;
Title:string;
TitleOfAccess:string;
Order:number;
Submenu:Menu;
}
我从服务中获取JSON数据,并创建了一个类型菜单数组。当我尝试在数组中推送这些值时,它会从JSON中推送所有的值。但是我只有在menu.ts中指定的这些属性
export class MenuComponent implements OnInit {
menuObj: Array<Menu>=[];
constructor(private serviceObj:SharedService) { }
ngOnInit() {
this.getMenu()
}
getMenu()
{
this.serviceObj.getMenu().subscribe(
data=>{
data.forEach(element => {
this.menuObj.push(element);
});
console.log(data);
console.log(this.menuObj);
}
)
}
我有一个控制台记录了这两个列表,两者都是相同的。它也推动了不必要的价值观。它是否只将特定值从JSON推送到数组。
发布于 2018-02-02 06:12:51
JavaScript不支持类型检查和对象映射,尽管类型记录支持。因为您的应用程序只会被编译成javascript。因此,您必须自己编写一个mapper类,或者使用一些可用的npm模块。
您可以自己实现相同的libray,按照这个链接进行相同的操作。
https://stackoverflow.com/questions/48576364
复制相似问题