2016-07-07 40 views
0

我有一個JSON,並且其中有一些我需要計算的字段。React.js - 計算值的最佳做法

最好的地方在哪裏呢?

目前我已經將它設置:

componentWillMount: function() { 
    //Iterating over the JSON object 
} 

計算我所有的值,然後渲染被調用。它工作正常。我只是想知道我做對了嗎?

+0

是的。將初始組件操作放入構造函數或componentWillMount中(或者如果需要dom,則爲componentDidMount)是一種正常模式。 – mrlew

+0

這取決於。 'componentWillMount'只被調用一次,所以如果數據是靜態的,那就沒問題了。如果你運行服務器,它會更好(在我看來)。 – ivarni

回答

3

這取決於。您是否安裝和卸載該組件很多?計算很重嗎?

正如你所說,你現在正在做的事情可能很好。如果你真的想分開數據和計算,你可能想看看reduxreselect

+0

在'reselect'中執行所有繁重算法是否是一種很好的做法?我有一個比賽安排的應用程序,我發現它有時非常緩慢。 :( – JohnnyQ

1

是的,你可以在你的json的componentWillMount中做所有的計算。 然後,您可以相應地設置狀態,因爲在componentWillMount中設置狀態不會導致重新渲染Infact,您的渲染方法將接收更新後的狀態。