react 有沒有類似vue中watch這樣的api?

漫思發表於2020-09-01

就是 當元件裡state 裡的資料發生變化
可以監聽到這個資料的變化 當資料發生變化的時候做一些事情 比如ajax請求 ?
初學react 用vue的時候會用watch 和computed 去監聽資料發生變化 但是react 裡不知道如何實現!

 

謝邀。

React 本身只解決檢視層。題主提的是一個資料層面的問題。

通常情況下,React 的狀態都是手動 setState 變化的,React 不監聽資料變化。

在實踐中可以嘗試在 state 裡放一個定義了 getter 和 setter 的物件,在 setter 裡來發這個請求,響應後再 setState 回去。。。

所以要麼 mobx 瞭解一下?



如果單純react的話 如果狀態發生變化,會觸發元件生命週期中的如下方法:

componentWillUpdate(object nextProps, object nextState)
componentDidUpdate(object prevProps, object prevState)

如果使用redux等的話,一般狀態變化是由dispatch引起的,你在dispatch的回撥中執行你想要的就可以了。



作者:季嚴亮
連結:https://www.zhihu.com/question/64160875/answer/217452961
來源:知乎
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。

相關文章