React
Remin建立在标准的Web标准API上。瑞安·弗洛伦斯(Ryan Florence)无法预测Remix是否能坚持下去,但是给出了充分的理由去学习它:你获得的知识不会丢失。就像React,你没用必要去学习另一种末班语言,你通过JSX获得的JS知识在其他地方仍然有用。Remin还被设置为框架无关。在Twitter上,Ryan介绍了下一个Remix可能的目标 。我把赌注压在Qwik和Solid上。我越来越多地认为Remix是通往Deno(也是基于Web API)的潜在门户,也可能是下一个超越React的框架。
React不相关的消息:Kent C. Dodds发生了一场严重的车祸 🤕
MDX 2.0的正式发布。这项技术允许Markdown和JJSX的交错使用,对于创建交互式内容非常方便(例如Josh Comeau的网站,Docusaurus...)。V2版在很多方面都有改进:修复了一些语法问题,显著提高了性能,可以支持其他框架...
Lifetime Analysis for React Component Architecture
Alan收到Rust中声明周期分析和对象归属权概念的启发,从而推断出React的状态应该放在哪里。我感觉我本能的做到了这件事情。原创阅读,一开始有点冗长,但是后面慢慢变得有意义。阅读时不需要了解Rust。
Creating a Schema-Based Form System
Tania解释了如何用JSON模式驱动React表单的渲染。这个例子是基于Formik和Yup的,但最重要的是技术,对于与向你发送这种模式的CMS或后端整合来说非常有用。
Extras:
- Dan Abramov 重写了 React 快速开始文档 (beta site),它看起来相当好!
- 🎥 the story of React: 对React故事进行了很好的回顾,从JQuery/Backbone到Next.js/Remix
- Pause Your React App with Breakpoints: 对这些仍然使用
console.log
的小伙伴😏 - react-zorm: 一个新的React表单库(非受控),有类型、基于Zod,将Web API(
FormData
)和Remix进行完美的集成 - The baseline for web development in 2022: 本周,网络上的那些统计数字让生态圈议论纷纷。React没有这么好的分数,特别是Next.js(在Core Web Vitals上被Gatsby打败了)。
- 🧵 “Over-fetching means three things to me”: 关于GraphQL与Relay的优势,与现代替代方案(Remix加载器、Next.js getServerProps、tRPC...)相比。
- 🧵 Next.js: avoid returning too much data in getStaticProps and getServerProps
- Recoil 0.6: React 18, concurrent rendering, strict mode
- Docusaurus 2.0.0-beta.15: 不错的发布 😌
- SWR 1.2: 支持
.mjs
+ optimistic UI自动根据错误回滚 - Gatsby v4.6
- 🎥 Nx ❤️ Remix
- Atomic design and storybook
React-Native
- React-Native Versions: 我知道这个工具可以了解每个React-Native版本(+Expo SDK)的使用情况。可能对说服你的老板升级很有用。
- Deep dive into React Native’s New Architecture: 介绍新架构的各个部分。JSI, Fabric, Turbomodules, Codegen
- 🐦 “We will be focusing a lot on Expo web this year”: exciting!
- 🐦 Demo React-Native-Skia: shaders, path interpolations
- 🐦 React-Native-Performance 0.4
- 🎙️ RNR 225 - Behind Our Decision to Cancel Chain React 2022
Other
随着新捆绑器的到来,类型检查成为大型代码库的瓶颈。Donny(Vercel)是SWC(Rust)的作者。他试图用Rust完全重写(POC的编译速度比tsc快62倍),但与借鉴现有tsc代码的移植相比,这是一个很大的工程。问题是:tsc代码库很难移植到Rust(共享的可变性,GC...),而Go更适合这个特定的任务。 SWC和Vercel的计划很明确:他们将为我们提供快速的工具,满足我们的一切需求:转译、类型检查、最小化和捆绑。关于移植tsc,Rust中存在另一种选择-- tyty--但目前它是一个边缘项目,尚未开源。
Deno分享了其2021年的回顾,在core(opcalls、perf、FFI)、他们的Deno Deploy服务(V8隔离,可与Cloudflare媲美,是Remix的好目标)方面的改进......我对与Web APIs和Node.js 兼容模式的兼容性感到兴奋。随着Node.js逐渐实现Web APIs(见下文),我们也许可以通过Remix等元框架更容易地从一种转换到另一种。
Extras:
- Node.js: v18 will support native
fetch()
🙌! JSON modules unflagged and maybe a new APIResponse.json()
? - Node.js debugging and error handling with Error Cause: 对这个ES 2022功能的良好介绍
- Trailing Slashes on URLs: Contentious or Settled?: my analysis on trailing slashe (done for Docusaurus) seems useful for the community. Zach Leatherman (Eleventy/Netlify) presented it in a more appealing way 🤗 This should also help Gatsby 😏
- V8 v9.9: 国际化改进
- prettier-plugin-tailwindcss: 对类名进行排序
- Updates from the 88th meeting of TC39: not much 😅 Note there’s an enum proposal (stage 0) 🤔
- Turborepo v1.1: 特别是允许创建对环境变量的依赖关系
- The TypeScript converging point: "我们可以通过TypeScript类型来表达每个JavaScript程序吗?" Stefan回答说 "还不行",并通过输入CLI包的
commander
来解释局限性 - NAPI-RS creator hired by Vercel 这加强了其在Rust的地位
- Vue 3 as the New Default
- Caching Header Best Practices
- Writing build scripts using TypeScript
- How TypeScript Won Over Developers and JavaScript Frameworks
- Demystifying TypeScript Discriminated Unions
- openapi-graphql
- The Return of Server Side Routing
- State of the Web: Bundlers & Build Tools, Static Site Generators, Serverless Functions, Deno, WebAssembly
- Publishing and consuming ECMAScript modules via packages
- A pipe operator for JavaScript: introduction and use cases
- Storybook + Figma
- The Web in 2036: Predictions on a Whim
- Building a Vaporwave scene with Three.js
- Speeding up VSCode (extensions) in 2022
- Getting Started With CSS Cascade Layers
- 🎥 How does !important actually work?