背景 入职新公司一个多月后,感觉项目代码就是一坨屎山。 很多接口类型为了省事,都是直接定义成 any,导致在使用的时候没有类型提示,甚至在迭代的时候还发现了不少因为传参导致的...
背景 入职新公司一个多月后,感觉项目代码就是一坨屎山。 很多接口类型为了省事,都是直接定义成 any,导致在使用的时候没有类型提示,甚至在迭代的时候还发现了不少因为传参导致的...
背景 目前在本地编译时,需要开启一个本地 Server 来托管图片,然后使用自定义插件来替换代码内所有引用相对路径的图片,把相对地址改成本地server路径。 例如: 现在目...
字体 or 字体族? 我们所熟知的"字体"通常包括多个变体,如粗体、斜体等。例如你可能熟悉(听说过)的Times字体,其实它有多种变体,包括TimesRegular、Time...
什么是SVG SVG是一种XML语言,可以用来绘制矢量图形。SVG可以通过定义必要路径和形状来创建一个图形,也可以修改已有的位图,或者将这两种方式结合起来创建图形。 主流的浏...
VSCode 有非常强大的功能,原因在于它的很多功能都是基于插件来实现的,可以使用插件来丰富和扩展它的功能。但是我们的需求总是复杂多变的,总有一些场景是现有的插件无法满足,这...
背景 最近,新来的小组长要整活,要把项目的小程序重构。之前小程序是用 uniapp 实现的,打包工具是webpack,现在要改成用 uniapp + vite。 图片地址转换...
背景 最近要做一个新项目,打算用 vite 来搭建项目。毕竟最近 vite 很火,vite 也可以说代表着未来,可以学习一下。 本文主要记录整个项目的搭建过程。 脚手架 直接...
上一篇文章提到了在小程序本地开发过程中使用 live-server 启动本地服务托管图片[https://www.jianshu.com/p/ce10fae35fb4],接下...
背景 随着小程序的多次迭代, 小程序体积越来越大, 在字节小程序ide上发现无法正常扫码预览,原因是小程序编译后的体积超过限制。看了打包产物,发现之前的配置是用 url-lo...
url-loader 使用过webpack的开发者,基本上都听说或者用过url-loader。 a loader for webpack which transforms f...
px px 全称pixel,也称为 CSS 像素,是绝对大小。基本上所有Web开发者都使用过px。例如chrome调试设备选择iPhone6/7/8时显示的就是375px *...
背景 UI同学给了设计稿,设计稿中的 Switch 跟组件库(例如arco-design、antd-design) 的Switch样式有区别。 大多数的Switch组件是类似...
背景 前几天,有个小伙伴在群里发问 "localStorage对于单个key存的值大小有限制吗?" 。 我看过的大多数关于 localStorage 的文章和八股文,基本上...
先看下官方文档是如何使用@loadable/component: loadable(() => import('./OtherComponent')) 的返回值是一个Reac...
http缓存分为强缓存和协商缓存。 ● 每次发起请求,浏览器都会先在浏览器缓存中查找该请求的结果以及缓存标识。● 每次拿到请求结果都会将结果和缓存标识存入浏览器缓存中。 强缓...
AbortController是一个DOM API。MDN上对它的介绍是 AbortController接口表示一个控制器对象,允许根据需要终止一个或多个Web请求。 但是它...
create-react-app是一个react官方支持的创建项目的脚手架,可以说大多数学过react的同学都使用过create-react-app创建项目。最简单的创建命令...
前言 ahooks是阿里开源的一个react hooks 工具库,其中包含了许多业务上能用到的自定义hooks。本文会介绍其中一个hooks —— useHistoryTra...