编辑推荐
低代码多分支协同开发的建设与实践
随着低代码的普及,在低代码平台上构建企业级应用逐渐成为生产趋势。同时,随着低代码技术的提升,越来越多的复杂应用在低代码平台中完成。在其研发生命周期中,低代码开发者就会面临多人协作、并行开发、维护多版本的场景。而现有的低代码平台普遍缺乏这一能力或支持较弱,导致对协同开发的成本较高,限制了迭代的效率。
深度阅读
对于“前端状态”相关问题,如何思考比较全面
不管是 ClassComponent 还是 FunctionComponent、Options API 还是 Composition API,他们的本质都是 状态与 UI 的松散耦合单元。
当组件数量增多,逻辑变复杂时,一种常见的解耦方式是 —— 将可复用的逻辑从组件中抽离出来,放到单独的 Model 层。UI 直接调用 Model 层的方法。
对 Model 层的管理,也就是所谓的 「状态管理」。
一文彻底弄懂浏览器缓存,只需动手操作一次
合理利用缓存,可以提高页面的打开速度,这句话是前端开发者耳熟能详的准则,
但具体缓存对页面性能有多大的影响呢?为了彻底弄懂浏览器缓存,就从动手验证这条准则开始吧。
内网穿透你真的了解吗?
内网穿透 作为程序员常用的调试手段之一,我们可以通过在个人电脑上运行花生壳或者 frp 等方式,让他人访问我们本地启动的服务,而且这种访问可以不受局域网的限制,当我们使用 ngrok、frp 等开源框架时,你是否有好奇过它神奇的作用?明明没有将服务部署到服务器,程序员们究竟是怎么通过这种特殊方式让所有人访问自己的主机的?本文将以 frp开源框架 为例,介绍内网穿透的原理。
外文精选
Optimize Interaction to Next Paint
To provide a good user experience, sites should strive to have an Interaction to Next Paint of 200 milliseconds or less. To ensure you're hitting this target for most of your users, a good threshold to measure is the 75th percentile of page loads, segmented across mobile and desktop devices.
Five Challenges to Building an Isomorphic JavaScript Library
Several challenges arose in even this very simple, fictitious isomorphic library, including:
1. Choosing the right dependencies
2. Designing a unified API between environments
3. Ensuring dependencies only affect intended environments
4. Testing every environment
5. Observability — metrics and logging
实践应用
现代 CSS 高阶技巧,不规则边框解决方案
CSS Painting API 是 CSS Houdini 的一部分。而 Houdini 是一组底层 API,它们公开了 CSS 引擎的各个部分,从而使开发人员能够通过加入浏览器渲染引擎的样式和布局过程来扩展 CSS。Houdini 是一组 API,它们使开发人员可以直接访问 CSS 对象模型 (CSSOM),使开发人员可以编写浏览器可以解析为 CSS 的代码,从而创建新的 CSS 功能,而无需等待它们在浏览器中本地实现。
前端 mock 数据的几种方式
具体需求开发前,后端往往只提供接口文档,对于前端,最简单的方式就是把想要的数据写死在代码里进行开发,但这样的坏处就是和后端联调前还需要再把写死的数据从代码里删除,最好的方式是无侵入的 mock 。下边介绍几种常用的方式,大家可以结合自己的项目来选取。
一文弄懂 React ref 原理
通过本篇文章的学习,你将收获 React ref 的基本和进阶用法,并且能够明白 React 内部是如何处理 ref 的,并通过一个小 Demo + 提问的方式带你更加深刻地理解 ref 的底层原理