前端进阶(2)使用fetch/axios时, 如何取消http请求 1. 需求 现在前端都是SPA,我们什么时候需要取消HTTP请求呢? 当我们从一个页面跳转到另外一个页面时,如果前一个页面的请求还没有返回,那么我们希望取消前一个页面的请求 某些操作耗时比较长(不能是保存等操作哦),如果用户不想等待 ...

»

前端进阶(1)Web前端性能优化 Web前端性能优化, 不仅能够改善站点的用户体验,并且能够节省相当的资源利用。下面将从1)服务器、2)html内容、3)css、 4)javascript、 5)图片等几方面介绍具体的优化操作。 目录: 1. 服务器优化 1.1. 使用内容分发网络(CDN) 1.2 ...

»

我从事技术写作的时间其实不长,开始写作的时间就是我掘金账号注册的时间: 到今天(2021年2月23日)也就是一年零一个月,这一年的收获是超过我的预期的: 产出博文四十多篇,总共数十万字 掘金优秀作者,掘金年度人气作者No.27 思否2020年度"Top Writer",万粉专栏作者 开源中国优秀源创 ...

»

dennisj

2021-02-23

本文开始我会围绕webpack和babel写一系列的工程化文章,这两个工具我虽然天天用,但是对他们的原理理解的其实不是很深入,写这些文章的过程其实也是我深入学习的过程。由于webpack和babel的体系太大,知识点众多,不可能一篇文章囊括所有知识点,目前我的计划是从简单入手,先实现一个最简单的可以 ...

»

dennisj

2021-02-19

本文会分享一个React性能优化的故事,这也是我在工作中真实遇到的故事,最终我们是通过魔改第三方库源码将它性能提高了几十倍。这个第三方库也是很有名的,在GitHub上有4.5k star,这就是:react-big-calendar。 这个工作不是我一个人做的,而是我们团队几个月前共同完成的,我觉得 ...

»

dennisj

2021-01-28

上一篇文章我写了koa-static的源码解析,其中用到了HTTP的缓存策略,给返回的静态文件设置了一些缓存的头,比如Cache-Control之类的。于是我就跟朋友讨论了一下HTTP的缓存策略: 朋友说:“HTTP里面控制缓存的头(header)太多了,啥Cache-Control,ETag,La ...

»

dennisj

2020-12-21

上一篇文章我们讲了Koa的基本架构,可以看到Koa的基本架构只有中间件内核,并没有其他功能,路由功能也没有。要实现路由功能我们必须引入第三方中间件,本文要讲的路由中间件是@koa/router,这个中间件是挂在Koa官方名下的,他跟另一个中间件koa-router名字很像。其实@koa/router ...

»

dennisj

2020-11-16

上一篇文章我们讲了怎么用Node.js原生API来写一个web服务器,虽然代码比较丑,但是基本功能还是有的。但是一般我们不会直接用原生API来写,而是借助框架来做,比如本文要讲的Express。通过上一篇文章的铺垫,我们可以猜测,Express其实也没有什么黑魔法,也仅仅是原生API的封装,主要是用 ...

»

dennisj

2020-11-02

优雅手撕bind函数 前言: 为什么面试官总爱让实现一个bind函数? 他想从bind中知道些什么? 一个小小的bind里面内有玄机? 今天来刨析一下实现一个bind要懂多少相关知识点,也方便我们将零碎的知识点串联起来。 »

bigname

2020-11-02

上一篇文章我们分析了Redux-Thunk的源码,可以看到他的代码非常简单,只是让dispatch可以处理函数类型的action,其作者也承认对于复杂场景,Redux-Thunk并不适用,还推荐了Redux-Saga来处理复杂副作用。本文要讲的就是Redux-Saga,这个也是我在实际工作中使用最多 ...

»

dennisj

2020-10-19

汇总遍历对象的六种方式及其区别 遍历对象属性方式千千万,奈何网上资料乱又乱! 前言: 本来计划写一篇关于深浅克隆的文章,奈何对各种遍历对象的方式搞得一头雾水,分不清各家的关系。所以特来先汇总一下。 本文汇总了遍历对象的各种方式以及各种方式的差异性,收藏好。以后遇到深浅克隆等功能时说不定能用上。还请客 ...

»

你不知道的闭包原理 想要理解闭包之前,就必须理解函数的创建过程、活动变量AO、作用域链。我曾写过相关的文章 网上相关对闭包的定义: MDN:函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起构成闭包(closure)。也就是说,闭包可以让你从内部函数访问外部函数作 ...

»

上一篇文章我们手写了一个Redux,但是单纯的Redux只是一个状态机,是没有UI呈现的,所以一般我们使用的时候都会配合一个UI库,比如在React中使用Redux就会用到React-Redux这个库。这个库的作用是将Redux的状态机和React的UI呈现绑定在一起,当你dispatch acti ...

»

dennisj

2020-07-09

提到HTML标签,我们会非常熟悉,开发中经常使用。但我们往往关注更多的是页面渲染效果及交互逻辑,也就是对用户可见可操作的部分,比如表单、菜单栏、列表、图文等。其实还有一些非常重要却容易忽视的标签,这些标签大多数用在页面头部head标签内,虽然对用户不可见,但如果在某些场景下,比如交互实现、性能优化、 ...

»

熟悉React的朋友都知道,React支持jsx语法,我们可以直接将HTML代码写到JS中间,然后渲染到页面上,我们写的HTML如果有更新的话,React还有虚拟DOM的对比,只更新变化的部分,而不重新渲染整个页面,大大提高渲染效率。到了16.x,React更是使用了一个被称为Fiber的架构,提升 ...

»

dennisj

2020-06-23

从Ant Design + element风格谈起 1、Ant Design提出的原则:【足不出户】 能在这个页面解决的问题,就不要去其它页面解决,因为任何页面刷新和跳转都会引起变化盲视(Change Blindness),导致用户心流(Flow)被打断。频繁的页面刷新和跳转,就像在看戏时,演员说完 ...

»

Zhang-jin

2020-06-10

提高代码质量的目的 程序猿的本职工作就是写代码,写出高质量的代码应该是我们的追求和对自己的要求,因为: 高质量的代码往往意味着更少的BUG,更好的模块化,是我们扩展性,复用性的基础 高质量的代码也意味着更好的书写,更好的命名,有利于我们的维护 什么代码算好的质量 怎样来定义代码质量的"好",业界有很 ...

»

dennisj

2020-06-05

为什么要提高代码扩展性 我们写的代码都是为了一定的需求服务的,但是这些需求并不是一成不变的,当需求变更了,如果我们代码的扩展性很好,我们可能只需要简单的添加或者删除模块就行了,如果扩展性不好,可能所有代码都需要重写,那就是一场灾难了,所以提高代码的扩展性是势在必行的。怎样才算有好的扩展性呢?好的扩展 ...

»

dennisj

2020-05-29

本文是设计模式的第二篇文章,第一篇文章是 "不知道怎么封装代码?看看这几种设计模式吧!" ,后面还会有 ,`提高代码质量`的设计模式,点个关注不迷路,哈哈~ 想必大家都听说过 原则,其实就是 ,意思就是不要重复写一样的代码,换句话说就是要提高代码的复用性。那什么样的代码才算有好的复用性呢? 1. 对 ...

»

dennisj

2020-05-25

html源码解析函数,源码解读相关推荐

  1. openxr runtime Monado 源码解析 源码分析:CreateInstance流程(设备系统和合成器系统)Compositor comp_main client compositor

    monado系列文章索引汇总: openxr runtime Monado 源码解析 源码分析:源码编译 准备工作说明 hello_xr解读 openxr runtime Monado 源码解析 源码 ...

  2. openxr runtime Monado 源码解析 源码分析:CreateSwapchain 画布 HardwareBuffer共享纹理 渲染线程 xrEndeFrame comp_renderer

    monado系列文章索引汇总: openxr runtime Monado 源码解析 源码分析:源码编译 准备工作说明 hello_xr解读 openxr runtime Monado 源码解析 源码 ...

  3. Flink 源码解析 —— 源码编译运行

    更新一篇知识星球里面的源码分析文章,去年写的,周末自己录了个视频,大家看下效果好吗?如果好的话,后面补录发在知识星球里面的其他源码解析文章. 前言 之前自己本地 clone 了 Flink 的源码,编 ...

  4. java 头尾 队列_源码|jdk源码之栈、队列及ArrayDeque分析

    栈.队列.双端队列都是非常经典的数据结构.和链表.数组不同,这三种数据结构的抽象层次更高.它只描述了数据结构有哪些行为,而并不关心数据结构内部用何种思路.方式去组织. 本篇博文重点关注这三种数据结构在 ...

  5. Flink源码分析 - 源码构建

    本篇文章首发于头条号Flink源码分析 - 源码构建,欢迎关注我的头条号和微信公众号"大数据技术和人工智能"(微信搜索bigdata_ai_tech)获取更多干货,也欢迎关注我的C ...

  6. Dapper源码学习和源码修改(下篇)

    继上篇Dapper源码学习和源码修改 讲了下自己学习Dapper的心得之后,下篇也随之而来,上篇主要讲的入参解析那下篇自然主打出参映射了. 好了,废话不多说,开始吧. 学习之前你的先学习怎么使用Dap ...

  7. [Android源码]Android源码之高仿飞鸽传书WIFI热点搜索与创建(一)

    (本文详情来源:android源码 http://www.eoeandroid.com/thread-296427-1-1.html   转载请注明出处!)  [Android源码分享]飞鸽传书的An ...

  8. java字节码文件加密_java 字节码加密源码

    java 字节码加密源码 java 2021-2-16 下载地址 https://www.codedown123.com/73152.html java 字节码加密源码,实现对class加密解密 资源 ...

  9. HTML五合一收款码网站源码(带35套模板)

    简介: HTML五合一收款码网站源码(带35套模板)是一款基于HTML开发制作的多码合一收款码生成网站源码,支持wx支付,支付宝支付,手机扣扣支付,京东钱包,百度钱包,五合一收款,将其二维码合并为一个 ...

最新文章

  1. python3的各个版本有什么区别_python不同版本的_new_不同点总结
  2. java自己实现读写锁_关于读写锁算法的Java实现及思考
  3. vue 递归组件多级_Vue递归组件实现树形结构菜单
  4. Ant 脚本打印系统属性变量、ant内置属性
  5. Java I/O模型从BIO到NIO和Reactor模式
  6. 机器视觉工业镜头-Computar
  7. (1-1)文件结构的升级(Area和Filter知识总结) - ASP.NET从MVC5升级到MVC6
  8. ShapeNet:超实时人脸特征点检测与形状拟合开源库
  9. Hack, Everything!
  10. 28个极简代码——python
  11. Java代码生成器简介、原理、开发流程和Demo
  12. 高中计算机表格制作,高中信息技术表格数据的处理教案
  13. springcloud搭建实战<十一>【config配置中心】
  14. 随机过程(一):泊松过程的详细理解
  15. 蚂蚁金服在云原生架构下的可观察性的探索和实践
  16. 厦大C语言上机 1394 抛硬币
  17. 工信部等三部委:推进区块链等新一代信息技术在养老场景集成应用
  18. android模拟器玩手游,电脑上玩手游PC安卓模拟器哪个好用?哪个手机模拟器最好...
  19. 如何通过热点打造爆款笔记?6个好写易爆的热点类型
  20. 抓取网易云评论,生成词云图

热门文章

  1. 【Windows】windows10 时间显示秒数
  2. JAVA中Robot类的运用,实现‘别踩白块’游戏辅助
  3. QT使用.c文件的代码
  4. 什么是过孔?过孔应该注意的地方
  5. 合作升级|Kyligence 跬智智能分析平台入选华为云联营商品
  6. 大连百家外语在短时间备考剑桥商务英语考试的有效方法
  7. Velodyne Lidar宣布与Renu Robotics达成多年期销售协议
  8. 微信小程序 换行显示指定行数据量
  9. 【达内课程】面向对象之多态
  10. 张飞老师硬件第二十四部--马达驱动--原理图设计①----5三项直流无刷永磁电机相关