組合:它是React官方特別推薦的一種組件化的設計方案拓挥。
意義:組合是React封裝組件的基礎思想斟薇,背后的語法基礎:props children / render props。
封裝組件的一般思路(觀察--封裝--使用)
1、思考當前產(chǎn)品需要復用的一種類型的組件,由哪幾個部分組件藤滥?(抽象、拆解)
把多個有所差異的需求社裆,抽象成一個模板(組件)
進一步把這個模板(組件)拆解多個不同“子部分”
2拙绊、把每個“子部分”封裝子組件,把每個子組件的多種可能通過props進行控制泳秀。
3标沪、把這些子組件,組合成多種不同的結果嗜傅。(3種header*2種boyd*2種footer=12種結果)
簡單理解繼承實現(xiàn)組件的復用金句?
// class Modal extends PureComponent {}
// class DefaultHeaderModel extends Modal {}
// class MiniHeaderModal extends Modal {}
// class DefaultFooterDefaultHeaderModal extends DefaultHeaderModel {}
// class CustomFooterMiniHeaderModal extends MiniHeaderModal {}
為props添加數(shù)據(jù)類型驗證
import PropTypes from 'prop-types'
為props屬性添加默認值
Modal.defaultProps = {? title: '呵呵'}