Angular 从“远程”json到当前json 3获取数据
我有一个这样的物体Angular 从“远程”json到当前json 3获取数据,angular,ionic-framework,ionic3,Angular,Ionic Framework,Ionic3,我有一个这样的物体 mapsToSync = {to:this.token,fils:[{src:"",md5:""}]}; 这里我想用来自资产的json填充fils this.http.get('../assets/fills.json').map(res => res.json()).subscribe(data => { this.mapsToSync.fils.push(data.fills); }); 而fills.json
mapsToSync = {to:this.token,fils:[{src:"",md5:""}]};
这里我想用来自资产的json填充fils
this.http.get('../assets/fills.json').map(res => res.json()).subscribe(data => {
this.mapsToSync.fils.push(data.fills);
});
而fills.json是
{
"fills":[
{"src":"","md5":""},
{"src":"","md5":""},
{"src":"","md5":""}
]
}
我的问题是这个。我的对象现在是这样的:
{
to:this.token,
fils:[{src:"",md5:""},[{src:"",md5:""},{src:"",md5:""},{src:"",md5:""}]]
};
我想要
{
to:this.token,
fils:[{src:"",md5:""},{src:"",md5:""},{src:"",md5:""},{src:"",md5:""}]
};
如果一个用户试图操作我得到的数据,例如data.length->length of undefined。所以数据还没有准备好。我必须使用async awain函数?因为您的mapsToSync.fils和data.fill具有相同的数组结构,所以您也可以使用concat功能直接合并它们
this.http.get('../assets/fills.json').map(res => res.json()).subscribe(data => {
this.mapsToSync.fils=this.mapsToSync.fils.concat(data.fills);
});
这样,现有数据将与新数据保持一致,但在声明中,我有mapsToSync={to:This.token,fils:[{src:,md5:}]};。所以如果我这样声明:mapsToSync={to:this.token,fils:[{src:somePath,md5:dfgfhdh4234456}]};。我将丢失有关其src和填充的信息。怎么推?有个错误。您必须分配它:this.mapsToSync.fils=this.mapsToSync.fils.concatdata.fills;是的,我刚刚错过了,我现在更新了答案,谢谢。这就是答案