0
我的目标是将数据传递到同一页面。我无法理解这个概念。我还是新来的离子btw。我的request.html
代码检索请求Firebase控制台的所有请求。如何将数据传递回同一页面
<ion-header>
<ion-navbar color="primary">
<ion-title name="title">Job Requests</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
<div class="filter">
<button class="islandwide" ion-button large>Islandwide</button>
<button class="nearby" ion-button large (click)="openMapPage()">Nearby</button>
</div>
<ion-list>
<ion-card *ngFor="let user of request | async" class="job">
<button ion-item (click)="goToJobDetails(user.$key)" class="info">
<ion-avatar class="avatar" item-start>
<img src="../assets/icon/user_male-512.png">
</ion-avatar>
<h2 class="name">{{user.regdetails.username}}</h2>
<p text-wrap class="address"><ion-icon name="compass">
</ion-icon> {{user.regdetails.address}}</p>
<p id="key">{{user.$key}}</p>
</button>
</ion-card>
</ion-list>
</ion-content>
我的构造函数:
constructor(public navCtrl: NavController, public navParams: NavParams,
angFire: AngularFireDatabase) {
this.request = angFire.list('/request');
this.userreq = angFire.list(`${this.userkey}`);
this.reqdetails = angFire.list('reqdetails');
}
我openMapPage()
方法
基本上这个方法返回所有谁只有reqdetails
用户,并将数据传回request.html
页面
openMapPage()
{
var ref = firebase.database().ref("request");
ref.once("value").then((snapshot) => { // <------ Here!
var a = snapshot.exists(); // true
var c = snapshot.hasChild("reqdetails"); // true
var d = snapshot.child('reqdetails').exists();
var requestsKey = snapshot.key;
var requestsValue = snapshot.val();
snapshot.forEach((childSnapshot) => { // <------ And here!
var requestKey = childSnapshot.key;
var requestValue = childSnapshot.val();
var reqdetails = requestValue.reqdetails;
if (reqdetails) {
this.data = requestKey;
console.log(this.data);
//this.arr.push(requestKey);
//console.log(this.arr);
}
});
this.navCtrl.push(RequestsPage, { 'param1': this.data });
});
}
这就是从请求表中获取所有数据后,将看起来像。这是默认视图,意味着它从firebase获取所有请求记录。
,现在我面临这个问题。当用户点击并触发request.html
中的我的openMapPage()
方法时,它将重定向到openMapPage
。如何重定向谁只有reqdetails
用户的数据,以相同的HTML页面request.html
我已经试过这到目前为止
this.navCtrl.push(RequestsPage, { 'param1': this.data });
但它仍然呈现的整体要求,这意味着它具有不已被过滤。
什么是您的console.log(this.data);'打印 –
它打印出只有reqdetails的所有用户密钥。 – Suresh
如何返回到request.html页面? – Suresh