2016-10-20 27 views
-1

我正在使用redux和es6。我想在組件掛載之前分發一個動作。問題是,使用最新的語法,componentWillMount不再存在。所以...我應該在哪裏派遣這個動作。在渲染組件之前調度動作

我的情況:我有一個組件需要用戶的信息(例如名稱)。我需要在組件掛載之前獲取用戶的名稱。

感謝,

+0

componentWillMount來自ReactJS,調度動作來自於redux。您應該閱讀本文檔,瞭解如何使用Redux與ReactJS:http://redux.js.org/docs/basics/UsageWithReact.html –

+0

是的,好的,但您理解我的問題,但仍未回答。我需要的是一箇中間件;)@hugohowchoong – JVilla

回答

1

您的組件連接到一個字段在您的狀態,讓我們把它稱爲「名」。當組件呈現時,確保它檢查名稱是否爲空;如果是,則呈現它,如果不是,則呈現任何內容。

在componentDidMount中,按正常情況激活您的調度 - 這反過來會減少並最終在您的狀態中更改「name」的值。這將導致重新渲染,然後將正確顯示。

componentWillMount只存在於服務器端,所以通常不是從它派發動作的最好辦法,就好像你只是有你的客戶端代碼一樣,它們不會工作。