almost 3 years ago

範例如下

class Home extends Component {
  constructor(props) {
    super(props);
    this.state = {
      distributionMap : [],
      showMap : true,
      ...
      ..
    };
  }
  ...
  ..
  render() {
    return(
      <div>
      { // 使用 立即呼叫函式 來執行複雜的判斷式
       (() => {
          if (this.state.distributionMap && this.state.showMap) {
            return <DistributionMap data={this.state.distributionMap} />;
          }
        })()
      }
      <ToDo data={this.state.todo} />
      <IncompleteItems data={this.state.incompleteItems} />
      </div>
    );
  }
}

使用 立即呼叫函式 雖然會影響效能
不過在執行比較複雜的判斷情境下
或許可以考慮犧牲些效能來換取程式的可讀性

← 利用三元運算式消除 if else 練習 React Rateit Component →
 
comments powered by Disqus