DanceOnBeat

Keep Keep Keep 不再当一个混子
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

摘要: 前言 上个月发表了一篇 React源码学习——ReactClass,但是后来我发现,大家对这种大量贴代码分析源码的形式并不感冒。讲道理,我自己看着也烦,还不如自己直接去翻源码来得痛快。吸取了上一次的教训,这次我决定:理性贴代码!翻阅源代码的工作还是留给各位小伙伴自己去做比较好。本来这次想准备说一说我 阅读全文

posted @ 2017-06-13 14:50 DanceOnBeat 阅读(9687) 评论(5) 推荐(7) 编辑

2020年1月8日

摘要: 前言 项目中我们有个通过浏览器进行人工外呼的需求,这边就涉及了一些voip相关的技术栈。使用freeswitch作为软交换平台,sip(会话初始协议)来作为信令的载体,结合webrtc等相关技术实现浏览器端拨打电话的需求。sip.js是使用javascript对sip协议进行了封装,它恰恰也是结合了 阅读全文

posted @ 2020-01-08 17:07 DanceOnBeat 阅读(4755) 评论(0) 推荐(0) 编辑

2019年6月21日

摘要: 需求背景 最近在项目中遇到了一个类似Collapse的交互需求,因此到github上找了一圈关于Vue Collapse的相关轮子,但是多少都有些问题。有的是实现问题,例如 "vue2 collapse" ,伸缩部分采用max height指定动画,存在缺陷;还有的是扩展性问题,遇到定制场景比较棘手 阅读全文

posted @ 2019-06-21 11:52 DanceOnBeat 阅读(2345) 评论(1) 推荐(0) 编辑

2019年4月21日

摘要: 问题背景 在我们的项目中有一个可视化配置的模块,是通过go.js生成canvas来实现的。但是,我们发现这个模块在浏览器中经常会引起该tab页崩溃。开启chrome的任务管理器一看,进入该页面内存和cpu就会暴涨,内存经常会飙到700多M。但是我们的canvas实际的像素只有约500x500,根据一 阅读全文

posted @ 2019-04-21 02:04 DanceOnBeat 阅读(934) 评论(0) 推荐(2) 编辑

2019年4月20日

摘要: Blob 在项目中涉及到要对html原生的audio组件进行样式复写,因此需要重新实现audio的一些功能,比如下载。实现一个下载大致的思路是服务端返回一段音频的二进制数据,客户端将其存放在Blob中,再通过URL.createObjectURL将其转换成blob url,最后动态创建a标签,添加d 阅读全文

posted @ 2019-04-20 15:44 DanceOnBeat 阅读(4386) 评论(0) 推荐(1) 编辑

2019年4月14日

摘要: 前言 在如今快节奏的工作当中,很多基础的东西会渐渐地被丢掉。就如继承这个话题,写React的同学应该都是class xxx extends React.Component,然而这可以理解为es5的一个语法糖,所以问题又回到了js如何实现继承。面试结束后,赶紧翻了翻积满灰尘的js高级程序设计,重新学习 阅读全文

posted @ 2019-04-14 13:21 DanceOnBeat 阅读(1231) 评论(0) 推荐(1) 编辑

2019年4月4日

摘要: 前言 之前项目中一直在用vue,也边做边学摸滚打爬了近一年。对一些基础原理性的东西有过了解,但是不深入,例如面试经常问的vue的响应式原理,可能大多数人都能答出来Object.defineProperty进行数据劫持,但是深入其实现细节,还是有很多之前没考虑到的东西,例如依赖收集后如何通知订阅器,以 阅读全文

posted @ 2019-04-04 20:07 DanceOnBeat 阅读(1228) 评论(0) 推荐(0) 编辑

2017年5月24日

摘要: 前言 之前一直在使用react做开发,但是对其内部的工作机制却一点儿都不了解,说白了就是一直在套api,毫无成就感。趁最近比较闲,对源码做了一番研究,并通过博客的方式做一些记录。 进入正题 通过编写自定义组件来实现代码复用是react一个很亮眼的创新点,我们知道react创建组件一般使用两种方式: 阅读全文

posted @ 2017-05-24 13:18 DanceOnBeat 阅读(2063) 评论(0) 推荐(1) 编辑