[英]Property 'pname' does not exist on type '{}'
我正在使用Ionic應用程序為其開發Firebase連接。 我從firebase獲得了json,但是在迭代時卻給了我錯誤。 我的provider.ts如下
export class MyProvider {
masterdata : Array<any>;
data : Array<any>;
constructor(public afd: AngularFireDatabase) {
}
getDataByPage() {
return this.afd.list('/masterdata/0/page/').valueChanges();
}
}
我想將其傳遞給我home.ts的差異頁面
export class Home {
home:Array<any>;
data:any;
constructor(public navCtrl: NavController, public navParams: NavParams, public popoverCtrl: PopoverController, public modalCtrl: ModalController,public masterdata: MyProvider ) {
this.masterdata.getDataByPage().subscribe(result => {
for(let i in result )
{
console.log(result[i]);
if(result[i].pname == "Home")
{
this.data = result[i];
}
}
});
}
}
我的json是
this.masterdata= {
page: [{
"pname": "Home",
"pagetitle": "Most Recent",
"list": [{
img: 'assets/img/01.png',
isAnimated: false
}, {
img: 'assets/img/02.png',
isAnimated: false
}, {
img: 'assets/img/02.png'
}, {
img: 'assets/img/03.png'
}]
},
{
"pname": "Profile",
"img": "assets/img/user-img.png",
"name": "Justin Timberlake",
"email": "Justin Timberlake@yahoo.com"
}, ]
}
它給我以下錯誤
Property 'pname' does not exist on type '{}'.
這應該工作result [i]['pname']
。
下次嘗試
let data = JSON.parse(result);
for(let i in data )
{
console.log(data [i]);
if(data [i].pname === "Home")
{
this.data = data [i];
}
}
普通的JSON看起來像:
page: [{
pname: "Home",
pagetitle: "Most Recent",
您可以使用Rxjs映射運算符更改此條件。 檢查您在控制台中得到的響應,並相應地更新邏輯。 但是,請確保已導入RxJS庫。
this.masterdata.getDataByPage().subscribe(result => res.json()).map(result =>{
console.log(res);
if(res.pname == "Home")
{
this.data = res;
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.