getContext и withContext не работает
Я пытался передать идентификатор в другой компонент с контекстом, но я получил неопределенный, где-то я делаю ошибку. Как я понимаю, мы должны получить контекст как реквизит. Есть идеи?
import {compose,withContext} from 'recompose'
const ComponentOne = ({id}) => {
console.log(id) // cizlory7iji600149711su9vj
...
}
const Context = withContext(
{id:React.PropTypes.string},
(props) => ({id:props.id})
)
export default compose(Context)(ComponentOne)
SecondComponent.js
import {compose,getContext} from 'recompose'
const ComponentTwo = ({id}) => {
console.log(id) // undefined
...
}
const GetContext = getContext(
{id:React.PropTypes.string}
)
export default compose(GetContext)(ComponentTwo)
1 ответ
Решение
Контекст работает только от родителей к детям, передавая реквизит, а не братьев и сестер.
Делать ComponentTwo
ребенок ComponentOne
,