- Published on
2023-第二十周
- Authors
- Name
- AgedCoffee
- @__middle__child
该周报主要为各个地方内容的汇总整理
技术
本文介绍了 TypeScript 中 infer 关键字的使用。该关键字允许开发者从现有代码中提取和推断类型信息。使用该关键字可以从一个已有的类型或表达式中提取类型,并且可以用于条件类型、函数和映射类型等场景。使用 infer 关键字可以提高类型安全性,使代码更加高效和清晰。文章还强调了该关键字的一些注意事项,并提供了一些实际的应用例子。
Dodging the Vercel Tax: How to use an open-source alternative for Serverless Postgres, Redis, and Blob Storage
这篇文章讨论了 Vercel 最近宣布的无服务器存储解决方案,包括 Postgres、KV 和 Blob。虽然这些服务提供了流畅的工作流程,但它们的价格较高。该文章建议使用 WunderGraph 作为替代方案,WunderGraph 是免费的、开源的,并提供类型安全、增强的 DX 和易于本地开发。文章提供了一个关于 WunderGraph 的快速入门指南,并解释了如何使用它来实现 Neon for PostgreSQL、Upstash for Redis 和 Cloudflare R2 for blob 存储。
Semantics and the popover attribute: what to use when?
这篇文章讨论了 HTML 中的新 Popover 属性可以在不改变元素语义的情况下向元素添加行为。作者探讨了可以与 Popover 属性一起使用的不同角色,例如菜单、对话框和列表框,并提供了何时使用每个角色的示例。本文还解释了每个角色的键盘和焦点期望,并指出 Popover 属性是实验性的,尚未得到广泛支持。
- React Server Components 旨在通过服务器驱动的思维模式实现现代 UX,从而导致客户端 JavaScript 包显著缩小。
- Server Components 不是 Server-side Rendering (SSR) 的替代品,但配合使用时,它们支持快速渲染中间格式,然后使用 SSR 基础设施将其渲染为 HTML,从而仍然能够快速进行早期渲染。
- Server Components 引入自动代码拆分,将客户端组件中的所有常规导入视为可能的代码拆分点,允许客户端在渲染过程中更早地获取组件。
5 Lessons Learned From Taking Next.js App Router to Production
- Next.js 13 的 App Router 提供了几个新功能,包括 Nested Layouts、Server Components 和 Streaming,是第一个完全利用 React 18 原语的开源实现。
- App Router 有两个缓存,一个是客户端缓存,另一个是服务器端缓存,必须了解它们如何相互作用。
- Streaming 功能允许更早地显示页面的某些部分,而不必等待所有数据加载完成。
- URL 搜索参数在布局服务器组件中不可用,最好在 URL 路径中使用它们。
- App Router 的规范化文件结构带来许多好处,例如促进使用 React 原语。
- 采用像 App Router 这样的新技术可能具有挑战性,但它提供了许多好处。
工具
zact
server actions for react
其他
创业公司有一个准则,叫做“最小可行产品”,意思是产品只要做到最简单的可运行程度,就可以发布,让市场来检验是否可行。
我想提一个相反的概念,叫做“最大可行产品”,意思是产品的主要功能完备以后,就到此为止了,不再添加新功能。我见过太多的优秀软件不断膨胀,功能越来越多,直到变得无比难用。
-- 《最大可行产品》