「Ohbug 前端周刊」第 22 期。本期刊开源(GitHub: ohbug-org/weekly), 欢迎 issue 投稿, 推荐项目。
由 React Router 原班团队打造,基于 TypeScript 与 React,内建 React Router V6 特性的全栈 Web 框架 Remix 正式开源
- 追求速度,然后是用户体验(UX),支持任何 SSR/SSG 等
- 基于 Web 基础技术,如 HTML/CSS 与 HTTP 以及 Web Fecth API,在绝大部分情况可以不依赖于 JavaScript 运行,所以可以运行在任何环境下,如 Web Browser、Cloudflare Workers、Serverless 或者 Node.js 等
- 客户端与服务端一致的开发体验,客户端代码与服务端代码写在一个文件里,无缝进行数据交互,同时基于 TypeScript,类型定义可以跨客户端与服务端共用
- 内建文件即路由、动态路由、嵌套路由、资源路由等
- 干掉 Loading、骨架屏等任何加载状态,页面中所有资源都可以预加载(Prefetch),页面几乎可以立即加载
- 告别以往瀑布式(Waterfall)的数据获取方式,数据获取在服务端并行(Parallel)获取,生成完整 HTML 文档,类似 React 的并发特性
- 提供开发网页需要所有状态,开箱即用;提供所有需要使用的组件,包括
<Links>
、<Link>
、<Meta>
、<Form>
、<Script/>
,用于处理元信息、脚本、CSS、路由和表单相关的内容 - 内建错误处理,针对非预期错误处理的
<ErrorBoundary>
和开发者抛出错误处理的<CatchBoundary>
全链路追踪技术的两个核心要素分别是 全链路信息获取 和 全链路信息存储展示。
Node.js 应用也不例外,这里将分成两篇文章进行介绍;第一篇介绍 Node.js 应用全链路信息获取, 第二篇介绍 Node.js 应用全链路信息存储展示。
Rust 是一个快速、可靠、节约内存的编程语言。在过去六年的 stackoverflow 的最受喜爱的编程语言(2016,2017,2018,2019,2020,2021)中,连续得到榜首的位置。Mozilla 创造了 Rust,Facebook、Apple、Amazon、Microsoft 和 Google 都使用 Rust 去开发系统基础设施、加密、虚拟化以及其他的层级较低的软件。
为什么 Rust 开始替换 Javascript 的 Web 生态系统的重要组成部分包括压缩(Terser)、编译(Babel)、格式化(Prettier)、打包(webpack)、代码检查(ESLint)、以及更多其他的库?
大道至简,繁在人心:在浏览器控制台安装 npm 包是什么操作?
通常,我们通过 npm install xxx 在 React、Vue、Angular 等现代前端项目中安装依赖,但是前端项目在本质上还是运行在浏览器端的 HTML、JavaScript 和 CSS,那么,我们有办法在浏览器控制台直接安装 npm 包并使用吗?
如果你对这个问题感兴趣,不妨跟着我通过本文一探究竟,也许最终你会发现:越是“复杂”的东西,其原理越趋向“简单”。
该库使用了 React 17 中提供的 Suspense 机制实现了其核心功能。它能够做到在子组件不在可视区域时,暂停它们的渲染。
import diff from 'microdiff'
const obj1 = {
originalProperty: true,
}
const obj2 = {
originalProperty: true,
newProperty: 'new',
}
console.log(diff(obj1, obj2))
// [{type: "CREATE", path: ["newProperty"], value: "new"}]
- 🕒 每周一准时更新 (重新定义周一)
- 👋 Github 和公众号同步更新 点击《阅读原文》前往 Github 仓库
微信搜索 「Ohbug」 或者关注公众号 ohbug, 即可订阅。