美文网首页我们在自己的世界里独自狂欢
React-router 的 updateBlocker是个什么

React-router 的 updateBlocker是个什么

作者: 继续海阔天空 | 来源:发表于2018-05-31 09:38 被阅读0次

    昨天在阅读react-router的官方文档的时候,发现了以前没有注意到的一个东东。<UpdateBlocker>

    当时由于在试图解决一个问题: 路由切换的时候,某一个公用组件又重新didmount,即进入下一个生命周期,因而也没有好好地阅读文档,误以为这个<UpdateBlocker>的作用是能够阻止组件进入下一个生命周期。

    后来几经测试,也没有得到满意的结果。后来仔细阅读文档,才发现与我之前的理解有很大差别。

    React-router文档里面提到的这个<UpdateBlocker>,实际上是只是告诉你结合React能够实现怎样的功能

    我们知道有些时候,我们并不想让组件发生更新,或者根据实际情况有选择地进行更新。这样也能够最大限度地保证WEB APP的性能。而这个<UpdateBlocker>的作用正在于此。

    这时候,其实还是要说回到React 的官方文档,从reactpurecomponent这一章节可以看出来,

    React.PureComponent is similar to React.Component. The difference between them is that React.Component doesn’t implement shouldComponentUpdate(), but React.PureComponent implements it with a shallow prop and state comparison.

    就是说React.PureComponent内部已经实现了 shouldComponentUpdate()方法,我们可以拿来就用。而不用像使用 React.Component那样,如果为了实现一个同样的判断组件是否需更新的功能,手动写这样一个方法。

    P.S 渣英语理解错了,还以为React.PureComponent

    相关文章

      网友评论

        本文标题:React-router 的 updateBlocker是个什么

        本文链接:https://www.haomeiwen.com/subject/qfzxsftx.html