![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
react
柒君
这个作者很懒,什么都没留下…
展开
-
mobx的使用注意事项
mobx是采用的发布订阅模式的方式管理程序的状态。即:任何订阅了该状态值的程序,在该状态改变时都将接收到通知,然后做出响应。参考mobx中文网 https://cn.mobx.js.org黄金法则: 如果你想创建一个基于当前状态的值时,请使用 computed。当状态改变时,所有衍生都会进行原子级的自动更新。因此永远不可能观察到中间值。所有衍生默认都是同步更新。这意味着例如:动作可以在改变状态之后直接安全地检查计算值。observable方法或装饰器,默认是递归调用的,即被观察对象的所有.原创 2022-01-01 21:38:40 · 803 阅读 · 0 评论 -
react-router-dom6和5区别
待修订6的改进:1.useHistory钩子废弃,改为useNagetive钩子2.Switch组件更名为Routes组件,且子元素只能是Route组件或React.Fragment组件3.Route之间可以进行嵌套4.Route的strict属性废弃,不在需要考虑路径结尾是否有‘/’5.Route添加了index属性,拥有index属性的Route不具有path属性(写了也无效),它在父级未匹配任何子路由时展示(类似于fallback)6.新增Outlet组件,是子路由们渲染的容器7.Ro原创 2021-11-12 10:34:07 · 4938 阅读 · 0 评论 -
react16和react17区别
17改进:1.不再在document上绑定事件,改为绑定于rootNode节点,这样可以使多个版本的react同时存在于页面中,不会因为事件绑定系统起冲突2.去除了事件池,不在用e.persist(),现在可以直接在异步事件中(回掉或timeout等)拿到事件对象3.副作用清理函数(如果存在)改为异步执行,即在浏览器渲染完毕后执行???副作用清理函数会异步执行 —— 如果要卸载组件,则清理会在视图更新后运行4.forwardRef和memo组件的行为会与常规函数组件和class组件保持一致原创 2021-11-12 10:34:37 · 3383 阅读 · 0 评论 -
react项目安装与配置
CLI:npm install -D webpack webpack-cli webpack-dev-server @babel/core @babel/preset-env @babel/preset-react @babel/plugin-proposal-decorators @babel/plugin-proposal-class-properties @babel/plugin-syntax-dynamic-import babel-loader style-loader css-loader原创 2021-08-27 23:48:54 · 778 阅读 · 0 评论 -
redux和sessionStorage,localStorage的区别
注:很多同学觉得用localstorage可以代替redux, 对于不变的数据确实可以,但是当两个组件共用一个数据源(对象或数组)时,如果其中一个组件改变了该数据源,希望另一个组件响应该变化时,localstorage无法做到。1.redux中的数据,在刷新(手动或者js触发)页面时,就会消失(或者说被重新初始化),无法持久化。2.sessionStorage中的数据,关闭浏览器后消失(会话结束),且按域存储。3.localStorage中的数据,永不消失(持久化在硬盘),且按域存储。原创 2020-08-16 16:24:59 · 2142 阅读 · 0 评论 -
react15和react16区别
代替react15的同步更新,react16的scheduler调度器会告诉reconciler,浏览器是否有空闲时间执行js脚本(通过浏览器原生提供的api)。我们知道js可以操作dom元素,所以浏览器的GUI线程和js线程是互斥的。对人眼来说,正常流畅的刷新率为60hz,即60帧,即浏览器约16.6ms刷新一次。这样在组件层级过深时,会造成js执行时间过长,浏览器无法布局和绘制,造成丢帧。JS脚本执行 ------》 浏览器样式布局 ------》 浏览器样式绘制。的需求,改而采用新的结构。原创 2020-08-16 15:54:59 · 2193 阅读 · 0 评论 -
react-native环境搭建注意事项
注意:此为个人经验,请依据自身项目情况,酌情参考请严格参照react-native中文网的搭建开发环境文档进行操作。安装Java的jdk并配置相关环境变量。安装Android-studio,安装时会自动安装安卓开发所需的sdk。以上依据文档要求,下载相应版本,并配置好后,我们来初始化react-native项目。3.1. 使用nrm切换为国内的淘宝镜像源,防止卡住。npx nrm use taobao3.2 不再使用react-native-cli工具,而是采用npx re原创 2020-08-30 16:33:49 · 227 阅读 · 0 评论 -
React函数式组件和class组件
React函数式组件和class组件挂载组件:函数式组件:react会直接调用该函数,并传入props参数class组件:react会new此组件,并传入props参数更新组件:函数式组件:更新时,会重新执行此函数clss组件:更新时,该class组件的实例会重新调用自己的render方法,也就是说原来的实例还是原来的实例。通过测试发现:更新时,constructor函数根本没执行,也就是说根本没有new新的实例。只是会重新调用组件的render方法。多多使用函数式组件:函数式组件没有自己的原创 2020-08-16 16:11:35 · 1815 阅读 · 0 评论