发表于:2022-03-08

内容 getCurrentTime const getCurrentTime = () => performance.now(); define("getCurrentTime", getCurrentTime); sleep const getCurrentTime = require("getCurrentTime"); const sleep = (tm) => { le...

发表于:2022-02-27

hook的使用,实现了useState,useReduce,useEffect <div id="app"></div> 代码 let currentComponent; let currentIndex; const components = []; class Component { __hooks = { _hookList: [], _effectHoo...

发表于:2022-02-10

本文对建站做了一种 demo 实现,并不代表能够应对真正生产环境的复杂场景 调研大量建站平台,发现大部分建站界面长的几乎一致,数据结构层也基本一致,那么就想到一个问题,能不能把通用的数据层/视图层抽离,作为基础,通过动态加载组件的方式满足不同的页面搭建场景。 最开始的想法是通过 rollup + systemjs 的方式,编译组件,然后动态加载组件,但是会有一些问题,比如依赖库共享问题,组件间...

发表于:2022-01-23

首先,我们先来看下 url 获取资源的本质,一般情况下一条 url 会请求到代理服务器(nginx)。 代理服务器会帮助我们选择目标资源,我将目标资源分为两类。 一类是静态的(变更频率低),静态的主要包括 html、js、css、图片、视频 一类是动态的(变更频率高),动态是可变的,最主要特点是两次请求返回结果可能不同,json、jsp、ssr、文件导出 当我们通过浏览器发出一个请求时候,...

发表于:2021-12-31

前端 i18n 库的选择 市面上比较流行的只有两种,两者功能差不太多。 i18n-next * 可支持插件拓展 * 不支持编译自动生成 key (但是可以直接用文案当作 key) react-intl * 不支持插件拓展,但支持高阶 hoc 的拓展 * 支持编译时自动生成 key i18n 的本质 key - value 映射 不管哪种方案都是 key - value 的映...

发表于:2021-12-03

> 我思故我在。——笛卡尔 目的 为什么要谈前端协作,在企业开发中一个个项目往往都是多人合作的,参与人数从 2-n 人不等。 如果你是一个新人,你是否经历过加入新项目时候问东问西,各种骚操作,花式小技巧,只能从前辈那里以嘴的方式获取。 如果你是一个老人,是否经历过新来的人完全不按你的套路写代码,代码乱放,各种组件cv制造,最终堆成一座崭新的屎山。 如何解决这两个问题呢? 作为新人我希望有个文...

发表于:2021-11-28

这个文章是从 11 月建立的没想到 12 月才写完,拖延症拖了一个月… 思考 我总是能有很多新奇的点子,很多都来源于宽广的认知,我觉得这也可能是我最大的竞争力。 比如我觉得 next 的注入方式不符合 spring 的方式,我就搞了一套新的注解 api,用起来也很爽。 这件事实际上很简单,模仿 spring 的 api 就行,但是这一切都来源于一个想法,所以说没了想法就算你会最快的算法又...

发表于:2021-10-24

如果没有播放点击play可视化 波形 频率 <div> <audio id="audio" controls autoplay> <source src="/imgs/demo.m4a" type="audio/mp4" /> </audio> </div> <div style="display: flex; flex-wrap: wrap; gap:20px"> <div...

发表于:2021-10-23

var string = ` <div > fff ddd <span style="123 fff" data-size=12 data-width='20px' >123</span> <br style="fff" /> ddd </div> `; var offset = 0; // <div> or </div> or <div > function getTagName(s...