欢迎在下方发表您的优质见解
1)对于正常的项目优化,一般都涉及到几个方面,开发过程中、上线之后的首屏、运行过程的状态
来聊聊上线之后的首屏及运行状态:
在很多应用中,都会涉及到使用redux以及使用context,这两个都可能造成许多不必要的render,所以在使用的时候,也需要谨慎的处理一些数据;
最后就是保证整个应用的可用性,为组件创建错误边界,可以使用componentDidCatch来处理;
实际项目中开发过程中还有很多其他的优化点:
@Genzhen 请教一下大佬,如果在render里面结构赋值也会影响性能吗?比如 const { page, size } = this.state这种的?
@Genzhen 请教一下大佬,如果在render里面结构赋值也会影响性能吗?比如 const { page, size } = this.state这种的?
其实你在使用的时候在render中需要用到state的时候,你使用的时候肯定是必须要拿state上的值,如果不解构,就要使用this.state.xxx的方式,每次render的时候每一个在state上的值都需要从this上找,再从state上找,这样其实会更慢。所以解构出来的方式比直接使用this.state.xxx的方式是更合适的。
@BoWang816 明白了,感谢!
@Genzhen 请教一下大佬,如果在render里面结构赋值也会影响性能吗?比如 const { page, size } = this.state这种的?
其实你在使用的时候在render中需要用到state的时候,你使用的时候肯定是必须要拿state上的值,如果不解构,就要使用this.state.xxx的方式,每次render的时候每一个在state上的值都需要从this上找,再从state上找,这样其实会更慢。所以解构出来的方式比直接使用this.state.xxx的方式是更合适的。
脱离量级谈性能都是耍流氓。能慢多少?把这时间搞点别的不香嘛
@Genzhen 请教一下大佬,如果在render里面结构赋值也会影响性能吗?比如 const { page, size } = this.state这种的?
其实你在使用的时候在render中需要用到state的时候,你使用的时候肯定是必须要拿state上的值,如果不解构,就要使用this.state.xxx的方式,每次render的时候每一个在state上的值都需要从this上找,再从state上找,这样其实会更慢。所以解构出来的方式比直接使用this.state.xxx的方式是更合适的。
你好,我想请教下,const {page,size}= this.state 这样的取值方法 与 直接访问this.state.page 性能上的差异是因为每次都要从原型链查找过去吗(这个是叫原型链吗),这一步的优化是否与const page=this.state.page ,之后都使用这个page,优化原理一样,不用每次使用都一级一级找下去
Most helpful comment
其实你在使用的时候在render中需要用到state的时候,你使用的时候肯定是必须要拿state上的值,如果不解构,就要使用this.state.xxx的方式,每次render的时候每一个在state上的值都需要从this上找,再从state上找,这样其实会更慢。所以解构出来的方式比直接使用this.state.xxx的方式是更合适的。