react context跨層級傳遞引數

2021-10-09 05:52:39 字數 1065 閱讀 4146

什麼是跨層級傳遞引數?

要想用context,先了解一下上篇內容: prop-types, 因為需要用到這個知識。

進入正題---------------

先來看下不跨層級傳遞引數:

import react,

from

'react'

class

grandson

extends

component

<

/header>)}

}class

child

extends

component

/>)}

}class

extends

component

'標題'

/>)}

}export

再來看看context跨層級傳遞引數:

import react,

from

'react'

import proptypes from

'prop-types'

class

grandson

extends

component

render()

<

/header>)}

}class

child

extends

component

}class

extends

component

// 1,返回乙個物件,裡面是攜帶的引數。固定寫法

getchildcontext()

}render()

}export

context應用場景:

如果需要讓引數層層傳遞,這時候可以用context。但是context並不是唯一的和最好的處理方式。

官方給出的例子中,組合元件也是處理引數傳遞的不錯的選擇。

React Context 跨層傳遞props

proprs一級一級往下傳,若對中間component無用,則很麻煩 浪費時間 使用context,將乙個component的props作為全域性props,使用context呼叫即可 import authcontext from context auth context 將需要接受傳遞的物件包在...

Vue元件跨層級通訊

正常元件間通訊 父 子元件 是通過屬性傳遞 子 父元件 是通過this.emit 傳遞 this.emit 返回的是this,如果需要一些值 可使用callback方式傳遞 provide 和 inject 這對選項需要一起使用,以允許乙個祖先元件向其所有子孫後代注入乙個依賴,不論元件層次有多深,並...

react元件跨層級通訊context

react 中使 context 實現祖代元件向後代元件跨層級傳值。vue中的 provide inject 於context context api react.createcontext 建立 個 context 物件。當 react 渲染 個訂閱了這個context 物件的元件,這個元件會從元...