1
我在將路由推入導航器後加載遠程數據,並希望在加載數據後更新導航欄標題。在反應原生導航器的導航條中替換標題導航條
我可以調用this.props.navigator.replace({ component: MyComponent, title: 'Updated Title' })
,但這也觸發了重新安裝和重新渲染整個場景。
有什麼辦法可以在不更新路線的情況下更新導航器的navigationBar顯示?
我在將路由推入導航器後加載遠程數據,並希望在加載數據後更新導航欄標題。在反應原生導航器的導航條中替換標題導航條
我可以調用this.props.navigator.replace({ component: MyComponent, title: 'Updated Title' })
,但這也觸發了重新安裝和重新渲染整個場景。
有什麼辦法可以在不更新路線的情況下更新導航器的navigationBar顯示?
退房這個問題的GitHub:[Navigator] Binding the navigation bar with the underlying scene
一位評論者使用事件建議。您可以使用新標題作爲參數從任何Component中發出事件。您的導航欄標題組件可以偵聽這些事件並在接收到它們時自行更新。
This StackOverflow answer演示如何使用事件語法。
爲什麼不在標題中使用狀態變量,然後在想要更改標題時使用setState。 –
沒有API來引用導航器中的標題視圖。我想我可以傳入一個標題對象,然後將其分配給組件的道具。那是你在想什麼? – Arrel
是的。有點。 <導航器navigationBar = { {this.state。 title} } /> –