2017-05-26 56 views
-1

我會說這說,我是新來的SO和Angular2前言本。angular2/ionic2如何使用* ngFor參數的函數調用

我試圖用我的* ngFor環路參數與navCtrl.push()傳下來就行了。目標是獲得類似Facebook Messenger的信息,點擊您想要訪問的聊天羣組,並顯示一個版本的頁面,其中包含與您點擊的聊天羣組相關聯的內容(消息)。這是我認爲會工作。問題在於推送/接收'事件'變量。我在ngFor循環中也做了一些文本引用,但是我把它剪掉了。

<div *ngFor='let event of dataProvider.data.invitedEvents'> 
    <button (click)='this.navCtrl.push(groupVotePage, event)' ion-item> 
    </button> 
    </div> 

然而,當我嘗試與this.navParams.get的groupVotePage(「事件」)(在構造與navParams)訪問時,我得到空。我想知道是否有任何方法可以通過這個方法,或者我甚至可以用正確的方式去做。我知道有一些後端的東西我需要確認是正確的,如果你能讓我知道那是什麼,那麼這也會很棒。

謝謝!這裏

回答

1

問題是,在模板你沒有我的意思是,當你寫this.navCtrl角將尋找一個屬性與此您的組件裏面,第二個問題groupVotePage不是財產,所以簡單的講您在模板中使用的所有內容都必須是組件內的屬性/方法。

部件

public goToPage(event){ 
    this.navCtrl.push(groupVotePage, { event: event}) 
} 

然後按鈕

<button (click)='goToPage(event)' ion-item></button> 

PS的內部創建新方法。第二個參數是路由器將讀取的對象。您需要傳遞鍵值對路由器才能訪問您的事件

+0

好的,我明白你在說什麼了。良好的洞察力,但並不能解決我的問題。需要注意的是,我沒有任何麻煩導航到頁面,這會讓我認爲使用'this'不是問題。我遇到的唯一問題是將「事件」作爲參數。 –

+0

@OwenCummings檢查更新。 –

+0

現在,我可以使用值到達頁面:而不是this.navParams.get('event')返回null,它將返回零。但這仍然不是我的目標。我還應該在這裏使用鍵值對嗎?或者以某種方式將它添加到我的構造函數? –

相關問題