我正准备做我的第一个React项目,而且我的阅读已经非常明确地说我需要让React处理所有使用虚拟DOM的渲染,并且我不应该做任何会干扰它的手动DOM操作虚拟DOM计算. 然而,我无法弄清楚的是
然而,我无法弄清楚的是:
假设我在一个包含其他HTML的页面中的div #app中呈现了一个React组件.这是否意味着我必须避免在页面的任何位置进行任何普通的JavaScript DOM操作?或者我可以安全地在页面的其他地方使用DOM操作,只要我将#app div和元素留在实际的React组件中吗?
编辑:激励用例
我考虑使用非React组件操作React组件之外的DOM的原因主要是因为Google可以看到HTML而不会跳过很多箍.假设我想要一些关于应用程序的描述性文本对SEO有用,并且该描述可能有一些下拉切换等等(因此DOM问题).我是否真的想/需要在React中编写所有内容,因为应用程序本身的复杂用户界面使用React,如果成本使Google难以编制某些文本索引?
假设您的html文件如下所示:<body> <div id="app"></div> <div id="others"></div> </body>
和React初始化如下:
ReactDOM.render(<Component/>, document.getElementById('app'));
你可以安全地修改div#others和DOM的任何部分,除了div#app,因为它是由React管理的.