簡體   English   中英

在React的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);

如果有必要的話,我將在此留個評論。

在React / Redux中查看樹結構和應有的組件性能問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM