首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
前端
订阅
Zzzxx
更多收藏集
微信扫码分享
微信
新浪微博
QQ
123篇文章 · 0订阅
「2万字长文」从JS上下文到Chromium源码的极限拉扯!!兄弟姐妹们接好了!!
由于个人对js产生了各种疑惑,又苦于网上尚无js上下文的源码级分析,只能自己硬着头皮上啦🌶🌶2万字长文,从chromium源码分析js上下文和作用域。
多人协同编辑技术的演进
主要内容以协同编辑技术为主,也会谈谈对技术发展的理解。包括协同编辑绵连的问题,一致性算法 OT 和 CRDTs,还有开源协同解决方案:基于OT的 ShareDB 和 基于 CRDTs 的 Yjs。
我在真实项目中使用了 AST 大法!
当时分享完觉得很空旷,虽然了解了其部分基础概念,也做了一个小 demo,但还是太过于表面,没有实际应用,纸上得来终觉浅。恰好最近有两次机会用上了 AST。 当 组员 整理完 项目的枚举,并将它封装为一个库后,MR 发了过来。 之前项目里零零散散的枚举统一由私有库来维护,再也不用…
经典性能优化面试题: 从一个 Transform 动画引发的关于浏览器渲染的深度思考
类似点击商品飞入购物车🛒内的移动动画的需求大家应该也都遇到过或自己开发过。但是和 Absolute 相比, Transform 的实现有什么区别呢? 案例显示 Absolute 实现的元素在移动中一直处于重绘之中,而使用 Transform 的元素却没有重绘。看来 trans…
Rollup打包React组件库并发布到npm私服
背景公司的前端组件库经过前端好几位大佬搞了个基于React、Antdesign二次扩展的库,之前设想是每个业务模块基于公共的组件库维护各自的业务组件库,经过几个周期之后,发现已经不可控了,每个业务模块
TypeScript、Rollup 搭建工具库
公司内总是有许多通用的工具方法、业务功能,我们可以搭建一个工具库来给各个项目使用。 新建一个项目目录如 fly-helper , 并 npm init 初始化项目。 tsconfig.eslint.json 我们根目录中增加了一个 tsconfig 文件,它将用于 eslint…
rollup打包基于antd的react组件库
前段时间公司在做公共组件的抽取,打算做一个公共的组件库,本来的想法是直接把封装好的各个公共组件直接引入到项目中就可以使用,后来发现直接引用会报错,大概意思是直接引入不能识别jsx语法之类的错误。 遂参考各个现成类库antd、elementUI等UI库的做法经过打包生成可供其他项…
你会动态规划吗?
复杂问题分阶段简化成简单问题,就是动态规划的思想。 动态规划常常适用于有重叠子问题和最优子结构性质的问题,动态规划方法所耗时间往往远少于朴素解法。 动态规划背后的基本思想非常简单。大致上,若要解一个给定问题,我们需要解其不同部分(即子问题),再根据子问题的解以得出原问题的解。动…
基于Vue快速实现列表拖拽排序
在业务中列表拖拽排序是比较常见的需求,常见的JS拖拽库有Sortable.js,Vue.Draggable等,大多数同学遇到这种需求也是更多的求助于这些JS库,其实,使用HTML原生的拖放事件来实现拖拽排序并不复杂,结合Vue的transition-group,还能快速的给排序…
可视化拖拽组件库一些技术要点原理分析
建议结合源码一起阅读,效果更好(这个 DEMO 使用的是 Vue 技术栈)。 1. 编辑器 先来看一下页面的整体结构。 这一节要讲的编辑器其实就是中间的画布。它的作用是:当从左边组件列表拖拽出一个组件放到画布中时,画布要把这个组件渲染出来。 用一个数组 componentDat…