前提・実現したいこと
今現在reactを触っているのですが、やりたいことができず困ってます。
あるコンポーネントから別のコンポーネントのstateの値を変更したいです。
該当のソースコード
boxComponent/boxComponent.jsx
react
1class boxComponent extends React.Component { 2 constructor(props) { 3 this.state = { 4 test: '' 5 } 6 } 7 render() { 8 ... 9 } 10}
formComponent/formComponent.jsx
react
1class formComponent extends React.Component { 2 render() { 3 return ( 4 <form> 5 <input type="text"></input> 6 <input type="submit" value="送信"></input> 7 </form> 8 ); 9 } 10}
やりたいこと
formComponent.jsxの送信ボタンを押したら入力内容をboxComponent.jsxのstateのtestの値を変更したいです。
できるのでしょうか?
componentAとcomponentBの関係は?親子関係なのか兄弟関係なのかとか。
別々のコンポーネントです。
説明が下手ですみません。。
いや、どういう関係性なのかということを上で聞いていると思うのですが。
すみません。最近始めたばかりで理解が足りてません。
例えると
boxComponent(親)/boxComponent.jsx(子)
formComponet(親)/formComponet.jsx(子)
みたいな感じなのです。
説明付加な場合は掲載されている説明では回答するのに足りる情報がないので、とりあえず実際のコードに似せたようなコードを掲載すると回答つきやすいとおもいます
すみません。ご指摘ありがとうございます。
boxComponent(親)/boxComponent.jsx(子)というのは「boxComponent.jsx」というファイルにboxComponentというコンポーネントが定義されているということですか?teratailorさんが聞きたかったのはboxComponentとformComponetの関係だと思います。親子関係や兄弟関係というのが理解できないのでしょうか。
回答しようにも回答できないですね
わかりづらくてすみません。全く別のコンポーネントです。
boxComponent/component1.jsx
boxComponent/component2.jsx
component1.jsxとcomponent2.jsxの関係は兄弟。
boxComponent/component.jsx(親)
boxComponent/header/component.jsx(子)
boxComponent/component.jsxとboxComponent/header/component.jsxは親子関係。
という認識であってますでしょうか?
今回の場合は
boxComponent/boxComponent.jsx
formComponent/formComponent.jsx
boxComponent.jsxとformComponent.jsxは別のコンポーネント
別なのはわかってるんです。こちらこそすみません。諦めました。
watadon111さん もしかしてフォルダ構成のことだと誤解されていますか?そうではなく、コンポーネント間の論理的な関係のことです。あるコンポーネントAのrender関数の中でコンポーネントBが使われているときAはBの親であるということです。
karamarimoさん
ご丁寧にありがとうございます!
そう誤解してました。すみません。
となるとboxComponent.jsxが親、formComponent.jsxが子になります!
回答2件
あなたの回答
tips
プレビュー