![](/img/trans.png)
[英]Deep Compare in Redux Reducer or in Component's ShouldComponentUpdate?
[英]Does it make sense to compare arrays of objects in React's shouldComponentUpdate?
我正在嘗試React,並且正在嘗試優化組件更新等。
我正在構建一個返回對象數組的搜索組件。 為了進行優化,如果嘗試執行新搜索后搜索結果相同,我試圖阻止組件更新。
現在,我正在使用Immutable進行比較,並且可以正常工作。
關於性能方面有何評論? 一般而言,這樣做有意義嗎? 還有更有效的方法嗎?
這是我的組件。
class ItemsListContainer extends React.Component {
componentDidMount() {
itemsApi.getItems();
store.dispatch(loadSearchLayout('items', 'found items'));
}
shouldComponentUpdate(nextProps, nextState) {
let prevItems = Immutable.fromJS(this.props.items);
let nextItems = Immutable.fromJS(nextProps.items);
return !Immutable.is(prevItems, nextItems)
}
render() {
return (
<ItemsList items={this.props.items} />
);
}
};
const mapStateToProps = function(store) {
return {
items: store.itemsState.items
};
};
export default connect(mapStateToProps)(ItemsListContainer);
如果有必要的話,我將在此留個評論。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.