发布了文章2022-06-28
现如今技术更新飞快,各种框架、工具、语言更是层出不穷。特别是前端技术,三五年基本就更新换代一轮了。经常听到开发小伙伴们一边感叹「学不动了」,一边又在不断追逐这些新技术。毕竟,如果不想被这个时代淘汰,就得不停地更新自己的知识体系,不停地「卷起来」。...
赞了文章2022-01-19
这是我的 2022 年第一篇文章。一直在想写些什么比较好,既然是新年,新年新气象,写点技术展望的想法是不是更合适?于是这篇文章的标题,也就是本文的核心思想出来了:
发布了文章2020-03-12
在学习 RxJS 的过程中,我发现很多概念晦涩难懂,比如:响应式编程、观察者模式、各种各样的操作符以及多播等等。理解这些概念通常会花费大量时间,而且很难将它们吃透。于是我就写了一个关于「大学生创业」的小故事,以帮助大家理解 RxJS 的核心概念。
发布了文章2019-12-26
当我们讨论到前端应用的权限控制时,不是在讨论如何去控制权限,而是在讨论如何将用户权限反映到页面元素的显隐上。如果用户没有权限访问请求,不仅会造成请求资源的浪费,还会降低用户体验。前端的权限控制就是为了解决这类问题。
发布了文章2019-12-17
随着前后端分离,开发的门槛降低了,我们不再要求团队中的每个开发都是全栈工程师,这样更容易找到项目的合适人选。团队也划分成了前端和后端两个团队。前端负责消费 API 并展示页面,后端负责提供 API。这两个团队可以并行开发互不影响,大大提升了效率。虽然前后端...
赞了文章2019-11-12
观察者模式,是JavaScript设计模式之一。当然也不仅仅限于JavaScript这门语言,网上对该模式的介绍已是多如牛毛,而且讲得各有特色各有心得。即便如此,笔者仍精心准备了这篇博客,期望用最简单的方式来介绍下该模式。
发布了文章2019-10-09
在前端开发的过程中,我们可能会花不少的时间去集成 API、与 API 联调、或者解决 API 变动带来的问题。如果你也希望减轻这部分负担,提高团队的开发效率,那么这篇文章一定会对你有所帮助。
发布了文章2019-10-08
从 React Hooks 正式发布到现在,我一直在项目使用它。但是,在使用 Hooks 的过程中,我也进入了一些误区,导致写出来的代码隐藏 bug 并且难以维护。这篇文章中,我会具体分析这些问题,并总结一些好的实践,以供大家参考。
发布了文章2019-09-24
我最近的在做的项目是一个前后端分离的项目,前后端由不同的团队分别开发,并且前端的进度经常领先后端。这就意味着,当前端在开发一个新功能时,API 可能还没有准备好。不过,我们会先和后端先商议好 API Schema,然后使用 Mock 数据进行开发。
发布了文章2019-04-09
在访问一个网页时,客户端会从服务器下载所需的资源。但是有些资源很少发生变动,例如 HTML、JS、CSS、图片、字体文件等。如果每次加载页面都从源服务器下载这些资源,不仅会增加获取资源的时间,也会给服务器带来一定压力。因此,重用已获取的资源十分重要。将请求...
发布了文章2019-01-30
对于一个 Web 应用来说,理想的测试组合应该包含大量单元测试(unit tests),部分快照测试(snapshot tests),以及少量端到端测试(e2e tests)。参考测试金字塔,我们构建了前端应用的测试金字塔。
发布了文章2018-12-28
写在前面的话 看这篇文章之前,你需要掌握的知识: React RxJS (至少需要知道 Subject 是什么) 背景 form 可以说是 web 开发中的最大的难题之一。跟普通的组件相比,form 具有以下几个特点: 更多的用户交互。这意味着可能需要大量的自定义组件,比如 DataPicker,Uplo...
发布了文章2018-09-10
本文主要分为以下三个部分: Error 的分类 分步骤详细讲解如何利用 Redux 统一处理 Error 错误信息的收集 本文的案例使用的技术栈包括: React,Redux,TypeScript,Axios,Lodash。 Error 的分类 HTTP 请求错误 HTTP 请求错误通常可以归为以下几类: 服务器有响应的错...
赞了文章2018-08-29
webpack 4 移除 CommonsChunkPlugin,取而代之的是两个新的配置项(optimization.splitChunks 和 optimization.runtimeChunk),下面介绍一下用法和机制。
发布了文章2018-07-17
这一篇是讲 SVG 的坐标系统,在这之前如果你对 SVG 的基础知识还不是很了解,可以先点这里学习 深入理解 SVG 系列(一) —— SVG 基础。 网格坐标系 和很多计算机绘图所使用的坐标系统一样,SVG 也使用了网格坐标系统。这种坐标系有如下几个特点: 以左上角为坐标系的...
发布了文章2018-07-16
SVG 全称 Scalable Vector Graphics (可缩放矢量图形)。它是一种用来描述二维矢量图形的 XML 标记语言。 本系列文章分为三个部分: 第一部分是 SVG 基础。 主要讲 SVG 的一些基础知识,包括 SVG 基本元素,画布和视窗等。 第二部分是 SVG 的坐标系统。主要会讲绘图坐...
发布了文章2018-01-07
"一等" 这个术语通常用来描述值。所以当我们说 "函数是一等公民" 时,也就是说函数拥有值的一切特性,你可以像看待一个值一样来看待一个函数。举个例子,数字在 JavaScript 中是一等公民,那么数字拥有的特性,也同样被函数所拥有。
发布了文章2017-01-19
从 HTML 到 HTML5, 表单相关的元素已经得到了很大的扩充, 基本能够满足我们常见的需求。但在实际工作中, 因为交互或者浏览器兼容的需要, 有时候不得不对原生的表单元素进行扩展或者模拟。但在此之前, 清楚的了解并掌握各种表单元素还是很重要的。在本文中, 我们将对...
回答了问题2016-11-29
这里有一篇博客详细介绍了,打一个小广告,哈哈。博客
关注了问题2016-11-29