🗒️ 浏览器深色模式

深色模式是一种主题,支持通过CSS的prefers-color-scheme媒体查询实现,能够在不同环境下提供更好的用户体验。尽管浏览器支持率高,但兼容性仍然是个问题,许多网站使用手动开关来切换模式。结合手动开关和媒体查询可以提升用户体验。提供了多种实现深色模式的方法,包括CSS变量和条件加载CSS文件。

🗒️ Server Side Render过程

服务器端渲染是在服务器端将数据和模板结合起来生成HTML页面,然后将完整的HTML页面返回给浏览器,浏览器不需要再等待JavaScript代码执行,可以更快地渲染页面。SSR可以提高网站性能,改善用户体验,还可以提高SEO的友好程度

🗒️ React状态管理库Recoil浅入浅出

Recoil 的产生源于 Facebook 内部一个可视化数据分析相关的应用,在使用 React 的实现的过程中,因为现有状态管理工具不能很好的满足应用的需求,因此催生出了 Recoil 。

🗒️ ANTD table 虚拟滚动

Antd Table虚拟滚动完整实现,包含搜索,排序

🗒️ React + antd-table 表格拖拽

React + antd-table 表格拖拽class类写法,顺便看到了Immutability Helpers,觉得还不错,简单的看了看

🗒️ setState是同步和还是异步的

setState 的合并是通过队列实现的。通过创建一个队列来保存每次 setState 的数据,然后每隔一段时间,清空和这个队列并渲染组件。在 React 的 setState 中,利用 JavaScript 的事件循环机制对多个 setState 调用进行合并。首先创建一个队列保存每次 setState 的数据,在一次事件循环的所有同步任务之后,清空着队列,将队列中的所有 setState 进行合并,并进行一次性更新渲染。这样在一次事件循环的,最多只会执行一次合并操作,并且只会渲染一次组件。

🗒️ React两大特色之React diff

React 的两大特色:React diff 和 Virtual Dom。React 中最值得称道的部分莫过于 Virtual DOM 与 diff 的完美结合,特别是其高效的 diff 算法,让用户可以无需顾忌性能问题而”任性自由”的刷新页面,让开发者也可以无需关心 Virtual DOM 背后的运作原理,因为 React diff 会帮助我们计算出 Virtual DOM 中真正变化的部分,并只针对该部分进行实际 DOM 操作,而非重新渲染整个页面,从而保证了每次操作更新后页面的高效渲染,因此 Virtual DOM 与 diff 是保证 React 性能口碑的幕后推手。

🗒️ 初识React-hooks

Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性(生命周期等特性)。带来的好处不仅是 “更 FP,更新粒度更细,代码更清晰”