this.props.jsx
が与えられました。これは、ReactコンポーネントかDOMノードです。私はReact.cloneElement(this.props.jsx, ref: { 'myElement' });
をマウントしたいReactコンポーネントのトップレベルDOMノードを常に取得するには?
は、その後、this.refs.myElement
へのアクセスの問題は、refが、実際にConnect
オブジェクトであるということである、と私はオブジェクト{ withRef: true }
が、その後getWrappedInstance()
を呼び出すことをエクスポートする場合、結果はまだリアクトコンポーネントではなく、 ReactコンポーネントのDOMノード
マウントされたReactコンポーネントのトップレベルDOMノードをいつでも取得できますか?
私は現在、私も考えることができる唯一のソリューションは、ラッパーREFを対象とし、その参照の子にアクセスすることですが、マジックナンバーをハードコーディングすることは愚かなようだReactDOM.findDOMNode()
を追求しています。
使用する必要はありません
...誤っ
ReactDOM.findDOMNode(this.refs.myElement)
は廃止されたと思ったが、それはまだ完全にはサポートされていますが、このプロセスは非常に簡単になりますReactDOM.findDOMNode() 'は、ほとんどの場合、コンポーネントの抽象化を突き刺すため、推奨されません。なぜなら、最初にこれを行う必要がある理由を説明する価値があるかもしれません。なぜなら、これは[XY問題](https://meta.stackexchange.com/questions/66377/what-is- the-xy-problem)が含まれています。 – trixn@trixn DOM上のコンポーネントのサイズを測定して、ヘッダにドッキングする必要があるかどうかを判断する必要があります – neaumusic