加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – React的性能问题

发布时间:2020-12-17 07:56:13 所属栏目:安全 来源:网络整理
导读:我读到React非常快.最近,我写了一个应用来测试对角度的反应.不幸的是我发现反应比角度慢. http://shojib.github.io/ngJS/#/speedtest/react/1 这是反应的源代码.我很反应.我确信我的反应代码在这里做错了.我发现它异常缓慢. https://jsbin.com/viviva/edit?j
我读到React非常快.最近,我写了一个应用来测试对角度的反应.不幸的是我发现反应比角度慢.
http://shojib.github.io/ngJS/#/speedtest/react/1

这是反应的源代码.我很反应.我确信我的反应代码在这里做错了.我发现它异常缓慢.
https://jsbin.com/viviva/edit?js,output

看看是否有任何反应专家可以找到瓶颈.

更新1:

>删除了上下文的用法.
>更好地使用setState.
>更好地使用shouldComponentUpdate.

我仍然不能使它比角度更快或甚至接近它.
https://jsbin.com/viviva/96/edit?js,output

更新2:

我在单元组件中创建了2d数组,这是一个很大的错误.所以我把它们变成了混合物.现在我相信在DOM操作中反应比角度更快.
https://jsbin.com/nacebog/edit?html,output

更新3:

我的错误了.我做错了,这让它更快.经过分析,它渲染不正确.如果有人可以帮助我理解,如果这可以更快.我知道反应不善于处理大型数组.在这种情况下,它处理四个3d数组. https://jsbin.com/viviva/100/edit?html,js

在我看来,这是一个非常人为的例子.

>如上所述,您正在错误地使用上下文.
>不需要mixin:列和行的数量可以而且应该作为props传递下去. create2DArray,getRandomNumber应该作为简单的全局函数声明在脚本的顶部.
>您正在错误地设置状态.你永远不应该像这样改变状态this.state.some =’whatever’,你必须使用setState

this.setState({some:’whatever’});

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读