要件は、他のコンポーネントからアクセス可能なメソッドを持つコンポーネントを作成し、他のコンポーネントから警告メッセージを送信できるようにすることです。反応成分のメソッドのエクスポート
静 - React.createClassをかES6クラスの静的:
(トースターのように)私たちは、以下の方法によりこれを行うことができます知っています。
コンポーネントのrefを使用します。
これを達成する最も良い方法は何ですか?
要件は、他のコンポーネントからアクセス可能なメソッドを持つコンポーネントを作成し、他のコンポーネントから警告メッセージを送信できるようにすることです。反応成分のメソッドのエクスポート
静 - React.createClassをかES6クラスの静的:
(トースターのように)私たちは、以下の方法によりこれを行うことができます知っています。
コンポーネントのrefを使用します。
これを達成する最も良い方法は何ですか?
これは非常にファンキーに見えて、データダウンのアクション・アクト・アプローチに従わないでしょう。
代わりにレンダリング小道具を使用することもできます。
// App.jsx
<AlertProvider>
{sendAlert => <Consumer onAlert={sendAlert} />}
</AlertProvider>
// AlertProvider.jsx
export default class AlertProvider extends React.Component {
sendAlert(msg) { alert(msg); }
render() {
return this.props.children(this.sendAlert);
}
}
// Consumer.jsx
export default function Consumer({ onAlert }) {
return <button onClick={() => onAlert('Boom!')} />
}
をあなたはそれが世界的に利用できるようにする必要がある場合は、Reduxのようなものを使用することを検討してください。
あなたがしようとしていることの簡単な例を教えてください(あるコード) – wgcrouch
私は共有するコードがありませんが、たとえばトースターのようなものが必要です。 – ram1993