240 发简信
IP属地:广东
  • 谷歌翻译后导致react重渲染失效

    最近碰到一个问题,系统在海外使用时,进行谷歌翻译后再对表单操作,会导致页面报错: 去掉相关业务代码后,发现可以这样复现: 在不经过谷歌翻译时,点击「改变」按钮逻辑一切正常执行...

  • react跨组件状态流:用事件流实现一个极其轻量高效的状态流工具

    如果你也喜欢使用react的函数组件,并喜欢使用react原生的hook进行状态管理,但为了跨组件状态流而不得不引入redux,MboX这种具有自己独立的状态管理的重量级/对...

  • 120
    react状态总结

    本文从动机脉络聊聊对react生态中的状态相关技术的演化过程。 个人理解,欢迎讨论 响应式渲染框架 这里只聊react的状态和视图渲染相关内容,不聊底层的Virtual DO...

  • async异步工具

    在es6中的async的语法中,可以参照java并发包实现一些有意思的异步工具,辅助在异步场景(一般指请求)下的开发。由于js是单线程,下面的实现都比java中实现简单 ...

  • Babel内部模块概述

    本文会对babel文档[https://www.babeljs.cn/docs/]文档从一个推导角度来阐述每个babel模块的作用,尝试理清其中脉络,方便快速理解。 本文不是...

  • react项目国际化:实现自动装配方案

    该方案提供一个外挂式的前端项目国际化实现方案,可以支持由于某些原因在一开始没有支持国际化,后续在几乎不需要改造原有业务代码的情况下支持国际化。利用构建工具,做到业务开发无感的...

  • eslint简介

    本文主要记录作者对eslint理解的关键点,建议在阅读本文之前,先阅读eslint官网用户手册文档 eslint是一个代码检查工具。 配置 添加eslint后,进行代码检验并...

  • 开发一个eslint插件

    本文记录如何开发一个elsint插件,阅读之前请先阅读官网的文档自定义插件[https://eslint.org/docs/developer-guide/working-w...

  • babel是Fixed模式,lerna当前默认是Fixed模式。

    lerna的基础使用

    lerna 概要 lerna是GitHub上面开源的一款js代码库管理软件, 用来对一系列相互耦合比较大、又相互独立的js git库进行管理。解决各个库之间修改混乱、难以跟踪...

  • 组件库按需加载深入探讨

    为了降低首屏代码大小,对于一些大的第三方库或者团队的基础工具库,需要按需导入模块。如: 但这在需要导入非常多的组件场景时,开发繁琐,体验不友好。在这些组件库的官方文档或者社区...

  • useState批处理的坑

    在学习react的时,关于状态的生效时机,官方说明多个状态在同时执行的时候会被合并[https://zh-hans.reactjs.org/docs/state-and-li...

  • 手写一个promise

    [toc] 本文遵循的Promise/A+规范实现一个简略版本Promise, 用代码理解规范中的每一句话. Promise/A+英文版规范, 中文版规范;es6中Promi...

  • html-plugin-webpack模板内容高度定制化

    使用html-plugin-webpack时一般都会设置template属性配置html模板。 但这存在缺点: 在团队拥有多个项目时, html格式的模板内容无法做到通用功能...

  • git子模块

    [[toc]] git submodules 子模块 如果想要在一个git项目中包含有其他git项目(比如一些基础框架库, 组件库,共用代码等), 可以使用git submo...

  • git设置指令别名

    git设置指令别名 git拥有许多指令,并且允许为这些指令设置别名, 提高开发效率.通过config命令对一些指令设置别名: 一个别名也可以为多个指令, 如: 常用的别名设置...