HeiYanjing

17
获赞数
2
关注数
1
粉丝数
IP 属地马来西亚
2020-04-08 加入
浏览 19.7k

生活本就很艰难,且行且珍惜。

45 声望|新手
前端
27
javascript
23
ecmascript-6
20
react
15
typescript
14
黄金勋章
暂未获得该勋章
如何获得
白银勋章
暂未获得该勋章
如何获得
青铜勋章
暂未获得该勋章
如何获得
个人动态
  • 发布了文章2023-10-30
    vue3 动态绑定背景图片
    有时候会遇到给img标签或者div设置背景图片的需求,资源文件可能需要经过二次判断来动态绑定。记录一下工作中遇到的坑img标签src属性函数获取这种方式可以避开绑定响应式数据响应式 {代码...} {代码...} sass语法设置背景图片yesOrNo是响应式数据 {代码...} 通过styl...
  • 赞了文章2023-09-12
    申请以及集成 Stripe 的 Alipay 支付方案
            最近在一个项目需要支持人民币支付,并且客户要求希望能够收完款后的结算是用美元,所以就想到了去年 Stripe 宣布已经跟支付宝达成合作意向,所以经过一番咨询跟集成,终于把 Stripe 集成进来,并且启用了支付宝收...
  • 发布了文章2023-05-27
    虚拟列表实现微信聊天记录查看功能
    这个功能是pc端程序,实现手机端微信聊天记录查看功能功能问题点1,默认看到的记录是倒序排列,页面最底下一条是最近一条消息2,聊天记录可能存在无限往上翻阅的情况,dom无法承载如此多消息,需要使用虚拟列表3, 向上向下翻阅过程中,滑动到上一页或者下一页如何定位...
  • 赞了文章2022-12-29
    react图片缩放、平移(position、transform实现)
    很多网页都会给文案附上一些图片补充描述,例如在说到地址时,会在旁边附上一张地图,并且在地图上标注该地址。如果附上的图片很小,很难看清楚地址的具体信息,有些产品经理会给图片设计一个可以平移、放大缩小的功能。本文将一一实现上述功能。
  • 发布了文章2022-09-16
    fetch封装网络请求
    HTTP错误(例如404 Page Not Found 或 500 Internal Server Error)不会导致Fetch返回的Promise标记为reject;.catch()也不会被执行。
  • 发布了文章2022-09-11
    问题集合2
    rAF不一样,当页面处理未激活的状态时,该页面的屏幕绘制任务也会被系统暂停,因此跟着系统步伐走的rAF也会停止渲染,当页面被激活时,动画就从上次停留的地方继续执行,有效节省了 CPU 开销。
  • 发布了文章2022-09-07
    CMS规范中require方法的简易实现
    简单来说几个步骤读取要加载的文件内容执行文件内容给执行后的结果包一层module外壳并返回一个导出文件module.js {代码...} 引入这个导出文件index.js {代码...} my_Require实现 {代码...} 运行requier.js文件打印出hello~ hello world
  • 发布了文章2022-08-26
    HTTP各版本特点整理及HTTPS
    HTTP/1.0支持GET和POST请求方式本质上支持长连接,但是默认还是短连接,增加了keep-alive关键字来由短链接变成长连接HTTP的请求和回应格式也发生了变化,除了要传输的数据之外,每次通信都包含头信息,用来描述一些信息。还增加了状态码(status code)、多字符集支...
  • 发布了文章2022-08-22
    取消一个promise
    场景:发送多个请求后,当回来的数据要渲染到页面时,DOM元素被销毁了,此时如果要渲染就会报错比如 react 在 useEffect 中请求的数据时,组件销毁
  • 发布了文章2022-08-08
    问题集合(1)
    分析:要实现一个带并发限制的异步调度器,保证同时最多运行2个任务。这里的timeout方法和add方法都返回的是promise。需要两个队列,一个存储待执行任务,一个存储正在运行的任务。当执行队列小于2就直接执行任务,否则加入待执行队列,执行函数中执行任务后要从执行...
  • 发布了文章2022-07-20
    节流和防抖(二)
    防抖表示在用户停止某个操作一段时间之后才执行相应的监听函数,而不是在用户操作的过程当中,浏览器触发多少次事件,就执行多少次监听函数,在当前哪里中加入第三个布尔类型参数来控制在设置时间内只执行第一次或者是最后一次。
  • 发布了文章2022-07-11
    Vue3中响应式原理reactive模拟实现
    reactive是Vue3中提供实现响应式数据的方法.在Vue2中响应式数据是通过defineProperty来实现的.而在Vue3响应式数据是通过ES6的Proxy来实现的
  • 发布了文章2022-06-22
    webpack4和webpack5打包资源文件配置差异
    项目中会有一些资源文件,比如图片资源,字体资源文件等。这些文件在打包的时候需要移动到dist目录webpack4中,打包这些资源文件,需要用到url-loader和file-loader,file-loader把文件输出到一个文件夹中,在代码中通过相对 URL 去引用输出的文件 (处理图片和字体)ur...
  • 发布了文章2022-06-21
    postcss及基本使用
    利用从 Can I Use 网站获取的数据为 CSS 规则添加特定厂商的前缀。 Autoprefixer 自动获取浏览器的流行度和能够支持的属性,并根据这些数据帮你自动为 CSS 规则添加前缀。
  • 发布了文章2022-06-19
    实现一个compose函数
    纯函数和柯里化很容易写出洋葱代码 h(g(f(x)))。洋葱代码的嵌套问题使得我们的维护更加困难。这与我们选用函数式编程的开发初衷是相违背的,在这种情况下函数组合的概念就应运而生。函数组合可以让我们把细粒度的函数重新组合生成一个新的函数下面这张图表示程序中使...
  • 发布了文章2022-06-03
    Vue2中虚拟DOM和Snabbdom
    Vue2中的虚拟DOM实现改造了了第三方库snabbdomSnabbdom 是一个虚拟 DOM 库,专注提供简单、模块性的体验,以及强大的功能和性能。使用起来也很简单package.json
  • 发布了文章2022-05-30
    模拟Vue响应式原理
    当你把一个普通的 JavaScript 对象传入 Vue 实例作为 data 选项,Vue 将遍历此对象所有的 property,并使用 Object.defineProperty 把这些 property 全部转为 getter/setter。
  • 发布了文章2022-05-28
    VueRouter模拟实现
    Vue-Router hash模式URL中#号后面的内容作为路径地址监听hashchange事件根据当前路与地址找到对应的组件重新渲染history模式通过history.pushState()方法改变地址栏监听popstate事件根据当前路由地址找到对应组件重新渲染基本使用 {代码...} 第一步实现install方法第...
  • 发布了文章2022-05-04
    模拟可读流,可写流实现
    可读流模拟实现 {代码...} 可写流模拟实现 {代码...}
  • 发布了文章2022-05-04
    文件可读流可写流、drain事件,背压机制
    可读流案例 {代码...} 可写流案例 {代码...} 可写流写入速度问题 {代码...} 控制写入速度,被压机制分批限流 {代码...} 或者这里直接使用rs.pipe(ws)