2017-11-11 93 views
0
firedata = firebase.database().ref('/chatusers/');  
postData(val){  
items=[]; 
this.items.push(val); 
     this.firedata.child(this.afireauth.auth.currentUser.uid).update({ 
     uid: this.afireauth.auth.currentUser.uid, 
     post: this.items, 
     displayName: this.afireauth.auth.currentUser.displayName 
     }) 
}) 

我想我的數據推到火力點,所以每次的funtion POSTDATA叫我希望我的陣列items=[]跟上數據val追加。 目前它剛剛覆蓋新的價值。 我是ionic3的新用戶,請幫助我。離子框架將數據添加到陣列

expected output: 
---post 
     0: 'A' 
     1: 'B' 
     2: 'C' 
uid: 
----------------------------------------------- 

Code with ionic3 storage 


    firedata = firebase.database().ref('/chatusers/');  
     postData(val){ 
    var uniqueUID = this.afireauth.auth.currentUser.uid; 

    let toaster = this.toastCtrl.create({ 
     duration: 3000, 
     position: 'bottom' 
    }); 

    if(this.userdata.title==""){ 
     toaster.setMessage("Please fill out the title"); 
     toaster.present(); 
    } 

    this.storage.get('Task1-'+uniqueUID).then((item)=> { 
     if (item != null) { 
     item.push(val); 
     this.storage.set('Task1-'+uniqueUID, item); 
     } 
     else { 
     let array = []; 
     array.push(val); 
     this.storage.set('Task1-'+uniqueUID, array); 
     } 
     this.items.push(val); 
     this.firedata.child(this.afireauth.auth.currentUser.uid).update({ 
     uid: this.afireauth.auth.currentUser.uid, 
     post: item, 
     displayName: this.afireauth.auth.currentUser.displayName 
     }) 

    }) 

    } 
} 

回答

0

只需在myMethod()之外聲明它,如下所示。

items:any=[]; 

constructor(){ 

} 

myMethod(){ 

    firedata = firebase.database().ref('/chatusers/');  
    postData(val){  

    this.items.push(val); 
     this.firedata.child(this.afireauth.auth.currentUser.uid).update({ 
     uid: this.afireauth.auth.currentUser.uid, 
     post: this.items, 
     displayName: this.afireauth.auth.currentUser.displayName 
     }) 
}) 
} 
+0

不起作用。所以基本上,當我切換到其他選項卡它只是覆蓋。不要按照我想要的Firebase列表方式追加列表。 – unknown

+0

哦..你沒有告訴頁面移動沒有?您需要使用Ionic Storage模塊。請參閱並告訴我您是否需要更多幫助:http://ionicframework.com/docs/storage/ – Sampath

+0

我做了存儲部分,它確實有效,但問題是什麼遇到的是相同的數據被存儲爲所有的用戶。我已經發布了離子存儲的代碼。檢查 – unknown