Я хотел бы спросить, есть ли у меня 3 компонента, которые не являются родительско-дочерними (пожалуйста, не просите меня объединить 3 кнопки в один компонент), как показано ниже, я могу использовать redux для редактирования значения input3, нажав button1,
что, если я хочу нажать кнопку 1, а затем показать значение input3 в консоли.
Следует ли мне использовать для этого ссылка? но это не отношения между родителями и сыном, братьями и сестрами?
Спасибо
Button1
|
Button2
|
Button3
Составные части
class Button1 extends React.Component {
render() {
return (
<div>
<Button id = "Button1" ></Button>
<input id = "input1" />
</div>
);
}
}
class Button2 extends React.Component {
render() {
return (
<div>
<Button id = "Button2" ></Button>
<input id = "input2" />
</div>
);
}
}
class Button3 extends React.Component {
render() {
return (
<div>
<Button id = "Button3" ></Button>
<input id = "input3" />
</div>
);
}
}
ReactDOM
ReactDOM.render(
<Provider store = {store}>
<Button1/>
</Provider>,
document.getElementById('div1')
);
ReactDOM.render(
<Provider store = {store}>
<Button2/>
</Provider>,
document.getElementById('div2')
);
ReactDOM.render(
<Provider store = {store}>
<Button3/>
</Provider>,
document.getElementById('div3')
);
Если очень хотите, можете переслать реф. Пожалуйста, прочтите reactjs.org/docs/forwarding-refs.html





Почему вы используете 3 разных рендера и магазина? Почему это не может быть одно приложение? Чтобы сделать так, как вы хотите, вы должны создать одного родителя для всех этих 3 компонентов и сохранить там свое состояние и передавать значения в качестве реквизита для детей (а также сделать обратный поток данных). Пожалуйста, прочтите это статья.