ref
DOMエレメントの幅を取得しようとしていて、state
をコンポーネントrender
内で使用するように設定しようとしています。問題は、この幅がユーザの入力に応じて変化し、setState
をcomponentDidUpdate
以内に入力すると無限ループを開始し、ブラウザが爆発するためです。React.refsレンダリング後のDOMノードの幅と幅が値が変更された場合にのみ再レンダリングをトリガー
私はここにフィドルhttp://jsbin.com/dizomohaso/1/edit?js,output(いくつかの情報のためのコンソールを開く)を作成し
私の考えていました。
コンポーネントマウントを、
setState: refs.element.clientWidth
ユーザ入力データは、
new.state
は等しくないold.state
である場合にのみrender
shouldComponentUpdate
戻りtrue
をトリガします。私の問題は、このstate
をどこで更新すればいいのか分かりません。
お読みいただきありがとうございます。
ブラッド。