#javascript #reactjs #react-native #context-api #use-context
#javascript #reactjs #react-native #реагировать-контекст #использовать-context
Вопрос:
Предположим, у меня есть два отдельных компонента X и Y, где X — это зависимость в Y (не прямой потомок в проекте). Возможно ли получить доступ к контексту Y в X ?
пример:
<Y.Provider value={key: 'val'}>
<X />
</Y.Provider>
X — это отдельный проект, который хочет получить доступ к контексту Y, как это можно сделать?
Могу ли я импортировать контекст Y в X и использовать его? Y является полностью отдельным (неизвестным, пока X не используется в качестве зависимости в Y) компонентом?
Ответ №1:
Если вы хотите получить доступ к какой-либо родительской переменной, родитель должен передать ее как prop.
Y может передавать необходимые реквизиты своим дочерним элементам
const Y = (props) => {
const myVariable = 1
return React.cloneElement(props.children, { context: myVariable })
}
Тогда X мог бы получить к нему доступ через props.context.myVariable