• OT在线协作

    OT协作思想解决冲突 A, B两个用户在协作同一段初始文本:’aaab’。冲突操作: A在第3个字符后面插入了一个c(‘aaacb’)。 B在第3个字符后面插入了一个d(‘aaadb’)。 若A先提交,ot后正确结果:’aaacdb’。?为什么不...
  • 从props的children中获取ref

    从props.children中处理ref12345678910111213141516171819202122232425262728293031class Child extends React.Component { render(...
  • react的转发ref

    简单理解使用通用的高阶组件时,外层组件ref控制高阶组件中包裹的子组件中的元素,此时外层组件传入的ref并不作用于高阶上,这个时候,高阶组件就要用到React.forwardRef进行ref转发。 官方文档React.forwardRef 简单举栗�...
  • React-防止内存泄漏处理

    用React写了一段代码,浏览器的控制台Error 如下:Warning: Can’t perform a React state update on an unmounted component. This is a no-op, but it i...
  • useEffect & useRef

    注意本文是一片翻译,原文来自Lee Warrick的React’s useEffect and useRef Explained for Mortals。为啥翻译并记录这篇文章呢,因为看了以后觉得通俗易懂的为凡人解释了useEffect和useRef...
  • Touch和Mouse事件

    一个问题引发的思考移动端的一个页面,猜测哈,hover事件&mouseover事件都被监听时,mouse应该失效吧。因为移动端只有点触,没有mouse。事实:出现mouseover(定义了这个时候的样式)状态,就很奇怪。然后,本以为mouse...
  • webpackPlugins

    webpack.DefinePlugin 简介在编译时创建一个可以配置的全局变量,在区分开发模式|生产模式的不同时十分有用。 使用: 在webpack的plugins中,增加webpack.DefinePlugin(Object)的实例 方法中传入的...
  • vue3的数据响应式系统

    Vue2.0的数据监听Object.defineProperty 12345678910111213141516const object1 = {};Object.defineProperty(object1, 'property...
  • 数据结构与算法之队列

    队列 特性:先进先出 解题法则: 题目具备广度遍历(分层遍历)和顺序输出的特点,就应该想到用FIFO 队列来试一试。 滑动窗口类型题 模板: 分层遍历 循环队列 单调队列 普通队列 例题1:从上到下按层打印二叉树,同一层结点按从左到右的顺...
  • 手写代码系列之New(fn)

    New操作符做了哪些事 创建了一个全新的对象。 会被执行[[Prototype]](也就是proto)链接。 使this指向新创建的对象。 通过new创建的每个对象将最终被[[Prototype]]链接到这个函数的prototype对象上。 如果函数...