React 相關優化
阿新 • • 發佈:2020-10-22
<div onClick={this.OnClick.bind(this)}></div>
② 使用函式式宣告事件:
<div onClick={()=>this.OnClick()}></div>
③ 在按鈕內宣告,在constructor內繫結:
constructor(props) { super(props); this.OnClick = this.OnClick.bind(this) } render(){ return( <div onClick={this.OnClick}></div> ) }
結論 三者對效能優化的優先順序為③>②>①
二、關於元件傳值
render() { return (<div > <Demo name={{ age: 18 }} /> </div>); }
let name={ age: 18 } render() { return (<div > <Demo name={name} /> </div>); }
結論 兩者對效能優化的優先順序為②>①
② React.PureComponent 替換 React.Component
這比自己寫shouldComponentUpdate函式進行比較來的簡單且效能更好,但只適用於元件只根據傳進來的資料進行渲染而沒有內部狀態時使用,可以最大限度的提升效能。
③ ImmutableJS:() (Immutable.js 採用了持久化資料結構
和結構共享
,保證每一個物件都是不可變的,任何新增、修改、刪除等操作都會生成一個新的物件,且通過結構共享
等方式大幅提高效能。https://github.com/immutable-js/immutable-js)