亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PureComponent的用法是不是這樣

PureComponent的用法是不是這樣

郎朗坤 2019-03-12 17:19:18
一開始學習react的時候看到的是PureRenderMixin 后來google后說是用PureComponent 。我想知道什么時候用class App extends React.Component什么時候用class App extends PureComponent這兩種寫法出來的組件一個樣么。 還有這個PureComponent 我就這么用就可以了?不需要再寫其他的代碼了么
查看完整描述

3 回答

?
蝴蝶不菲

TA貢獻1810條經驗 獲得超4個贊

PureComponent的本質是幫你寫了一個shouldComponentUpdate,做一層淺比較,實現渲染時優化。
如果是簡單類型的比較,就不用自己寫shouldComponentUpdate了。
需要注意的是:PureComponent和shouldComponentUpdate不能共存

查看完整回答
反對 回復 2019-03-18
?
一只名叫tom的貓

TA貢獻1906條經驗 獲得超3個贊

簡單的說就是purecomponents自己實現了shouldComponentUpdate 類似下面


function shouldComponentUpdate(nextProps, nextState){

    const cProps = this.props, cState = this.state;

    for(let key in nextProps){

        if(cProps[key] !== nextProps[key]) return true

    }

    for(let key in nextState){

        if(cState[key] !== nextState[key]) return true

    }

    

    return false;

}


查看完整回答
反對 回復 2019-03-18
?
猛跑小豬

TA貢獻1858條經驗 獲得超8個贊

import React from 'react';


class A extends React.Component {

    //當參數為復合數據組件時,比如對象、數組、Set、Map等, 以及它們的組件

}


class B extends React.PureComponent {

    //當參數為基本數據時使用,比如String, Number, Boolean等。

}


查看完整回答
反對 回復 2019-03-18
  • 3 回答
  • 0 關注
  • 992 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號