動的ページをリロードするとこのエラーが発生します。この動的ページでエラー:ID 275の要素を見つけることができません
Error: Unable to find element with ID 275. at invariant (invariant.js:38) at precacheChildNodes (ReactDOMComponentTree.js:96) at Object.getNodeFromInstance (ReactDOMComponentTree.js:172) at Object.didPutListener (SimpleEventPlugin.js:210) at Object.putListener (EventPluginHub.js:143) at Object.putListener (ReactDOMComponent.js:176) at CallbackQueue.notifyAll (CallbackQueue.js:76) at ReactReconcileTransaction.close (ReactReconcileTransaction.js:80) at ReactReconcileTransaction.closeAll (Transaction.js:206) at ReactReconcileTransaction.perform (Transaction.js:153)
と
Uncaught (in promise) TypeError: Cannot read property 'remove' of undefined at Object.willDeleteListener (SimpleEventPlugin.js:220) at Object.deleteAllListeners (EventPluginHub.js:201) at ReactDOMComponent.unmountComponent (ReactDOMComponent.js:976) at Object.unmountComponent (ReactReconciler.js:79) at ReactCompositeComponentWrapper.unmountComponent (ReactCompositeComponent.js:418) at Object.unmountComponent (ReactReconciler.js:79) at Object.unmountChildren (ReactChildReconciler.js:146) at ReactDOMComponent.unmountChildren (ReactMultiChild.js:373) at ReactDOMComponent.unmountComponent (ReactDOMComponent.js:974) at Object.unmountComponent (ReactReconciler.js:79)
iは成分の反応像ギャラリーと@ @gallery {ID}を用いて部品を交換した生のHTMLを持っています。私は2つのギャラリーを持っているダイナミックなパスでそれがうまくいっているし、サーバー側のナビゲーションとページをリロードするので、問題はできません。しかし、同じダイナミックコンポーネントを使用している特定の動的パスでは、リロード時にのみこのエラーが発生します。つまり、リンクをコピーして貼り付けると、このページに即座にアクセスできます。使用することにより、私は
<div data-reactid="274"> // this is item in children
<p>............</p>
<div data-reactid="275"></div>//but this is another item in children that for unknow reason nested in data-reactid="274"
</div>
を見る検査が、私は
<div data-reactid="274">
<p>............</p>
</div>
<div data-reactid="275"></div>
私は、これは(より多くのデータ)を追加するため、より多くのギャラリーが起こると考えるはずです。 問題は、レンダリングするオブジェクトの配列を取得するときに、サーバ側のナビゲーションを使用してページをリロードするときと同じであることです。私はこれを行うことで配列を取得しています。
どのように提案していますか?クローズされていないタグが閉じているかどうかを確認するにはどうすればよいですか? –
有効性を保証するために、HTMLパーサーを使用することができます。 htmlが保存時に有効であることを確認するのが最善です。また、https://www.npmjs.com/package/html-to-react –
を試すこともできます。また、add sanitize-html-react(https://www.npmjs.com/package/sanitize-html-react)を使用することもできます。 )を使用して生のHTMLをサニタイズします。破損したHTMLタグを訂正するのに役立ちます。 – Skaranjit