鍍金池/ 問答/PHP  HTML/ dva使用antd的Modal.confirm時獲取到的state值不是實時的

dva使用antd的Modal.confirm時獲取到的state值不是實時的

1.問題:在使用antd的Modal.confirm時放入一個Input,來更新state中的txNote屬性。但是只要出現(xiàn)confirm,獲取到的都是先前的state,而不是在confirm中輸入后更新的state
2.截圖:
初始confirm

初始state

在confirm中輸入之后的confirm

confirm中輸入后的state

點擊通過之后打印出來的state

3.從上到下依次為:

1.初始狀態(tài)confirm
2.初始狀態(tài)state,其中txNote為""
3.輸入內容后的confirm
4.輸入內容后的state,其中txNote已經更新了
5.點擊通過之后,我在該處理函數(shù)中打印出state,結果txNote還是""

4.在redux開發(fā)者工具中跟蹤查看確實state更新了。排除state沒有更新的原因。
5.猜想:

是不是在confirm出現(xiàn)的時候,獲取到的一直是先前的state,因為當我下一次confirm時,點擊確定的時候打印出來的txNote是我上次輸入的內容
回答
編輯回答
風清揚

是的,Modal.method有這個問題,應該是它會重新生成一個新的Modal,參數(shù)就是生成時的state參數(shù),生成后不會隨state變化而跟新

2017年7月15日 23:58
編輯回答
爛人

肯定在某個步驟中將state的值重置了。
你都猜想了,那就一步一步debugger吧。

2017年8月9日 08:19