
react
song-cv
这个作者很懒,什么都没留下…
展开
-
react 三目运算渲染dom的替代方案
{ Array.isArray(this.props.qjnyxnqk)?this.props.qjnyxnqk.map((item, i) => <li key={i}>xxxxxxxxxxx</li> ):null ...原创 2020-02-18 10:37:15 · 529 阅读 · 0 评论 -
react使用immutable.js来优化性能
immutable是一个可以拿来比较对象的数值是否相等的插件,当然功能肯定不止这些,我这里只用到了对象对比,来优化性能,减少render次数。项目主要是靠dva或者父级组件传入的props来给子组件赋值的,state比较少用到,所以这里只比较了propsimport {Map, is,fromJS } from 'immutable';shouldComponentUpdate返回true代...原创 2020-01-19 15:52:30 · 411 阅读 · 0 评论 -
react如何实现刷新功能
通过一种取巧的方法来实现这个刷新功能。我通过切换月份触发一个全局的状态,告诉父级组件页面要刷新,这时候父级组件的一个方法就会被触发,其实就是***路由跳转***。我通过页面的props.history拿到当前页面的路由地址,然后在路由后面加上当前时间戳,让页面跳转到一个不存在的页面,同时还触发一个setTimeout的定时器,在跳转之后让其在很短的时间内跳回来,这样react自己就会在跳出页面后卸载掉页面。原创 2020-01-04 21:01:21 · 8432 阅读 · 0 评论 -
react实现类似vue-cli脚手架的自动更换已被占用端口
不是通过react脚手架搭建的项目不能实现自动更换已被占用端口号,导致项目启动失败,但若是出现需要复制一份运行不同版本,手动修改又过于麻烦,更加可能出现的是某一次复制后,启动前忘记了修改端口,发现启动失败,找了一会错误,以为是node_module或者其它的问题,到最后才发现是端口被占用,白白浪费时间。(PS:react脚手架不需要该设置,它已经集成了检测端口是否被占用并提示更换端口的功能)#正...原创 2019-12-02 10:17:36 · 745 阅读 · 1 评论 -
react通过state的数据显示style多个样式(三目运算)
style={this.state.show?{background:"#e5effd",border:"1px solid #99C7F4"}:null}react的普遍写法一个{}代表里面是一个可执行的代码块,className只有一个{},而style之所以有两个{},是因为react里的style需要是一个对象,所以就多出了一个{}来包住样式属性,使其成为一个对象,所以当要实现多个行内...原创 2019-11-06 17:42:43 · 5865 阅读 · 0 评论