React忽略初始客户端渲染/水合物上的一些子元素

时间:2017-10-27 18:21:48

标签: reactjs

所以我有一个多重同构的React 16应用程序,我正在寻找一种方法让客户端保湿和安装完全忽略某些DIV。

原因是在服务器发送初始HTML之后但在React bootstraps自己在客户端之前我做了我想要保留的DOM更改。

具体来说,有一个来回的流程,包括从无限滚动列表视图转到详细视图并返回到列表视图,并使"返回" snappy我在客户端的sessionStorage中存储了一大块页面HTML。然后一个内联的脚本块只是说像

if (window.performance.navigation.type == 2) {
  document.getElementById('results').innerHTML = sessionStorage.get('cacheHtml');`
}

为什么不在componentDidMount中执行此操作?在React运行之前,它的速度明显更快。 HTML恢复如此之快,它被认为基本上是即时的。如果我等待React生命周期事件,它会有点懒散。

为什么不使用componentShouldUpdate?这只会告诉React不要重新渲染更改,它不会阻止初始对帐。

就目前而言,它确实有效,它只是在发展中给出了关于意外DIV的警告。

任何想法都赞赏。

0 个答案:

没有答案