#javascript #reactjs #export #global-variables #state
#javascript #reactjs #экспорт #глобальные переменные #состояние
Вопрос:
export default function Example() {
const [name, setName] = useState("");
return (<div>Example</div>);
}
Я хочу экспортировать {name}, потому что я буду использовать его в другом компоненте. Я просто могу сделать это с помощью глобального состояния (контекстный API или Redux), или есть способ легко экспортировать var {name}, который отображается внутри другого экспорта?
Комментарии:
1. Я просто могу сделать это с помощью глобального состояния (контекстный API или Redux) — вот как вы должны это делать.
2.
useState()
hook предназначен для управления локальным состоянием; если вам нужна эта переменная и в другом не дочернем компоненте, это означает, что информация принадлежит состоянию общего предка или глобальному состоянию. Прежде чем искать способ экспорта переменной, я бы рекомендовал тщательно обдумать, правильно ли объявлять ее там, где она объявлена.3. Читать
context API
— kentcdodds.com/blog/how-to-use-react-context-effectively
Ответ №1:
Если вы хотите использовать name
вне Example
дерева компонентов (в качестве родительского компонента или где-то еще полностью), вам нужно либо поднять это состояние до более высокого общего компонента, либо использовать контекст или Redux, как вы отметили.