React
新的非常实用的库,它允许轻松打开React组件的源文件,只需在界面上简单的Option + Click
。支持CRA、Next.js、Vite... 只适用于VS Code,但也可以支持其他IDE,如Intellij。
Zag是一个基于状态机的原始组件的集合。这使得逻辑与框架解耦成为可能,并为React、Vue、Solid...提供一个绑定。这个新的解决方案将允许React Chakra UI库更容易地适应其他框架,同时共享更多的行为代码。
Why I don't miss React: a story about using the platform
Jack在Google从事Chrome DevTools工作2年了。从那时起,他不再使用React,并分享了他过渡到不需要依赖的标准化网络API的反馈:表单、自定义元素...
Kristofer根据个人兴趣,将他的个人网站从Next.js迁移到了Remix。他给出了自己的反馈,并分享了对Lighthouse评分的影响。他列出了他必须做出的主要变更:Chakra集成、Link组件、路由、数据获取、元数据......
How HashiCorp developers iterate faster with ISR
关于使用Next.js的增量静态再生来减少HashiCorp的文档网站的构建时间的反馈。新的 "按需ISR "模式使得Next.js的缓存失效成为可能,因此在更新发布时可以立即得到反馈。
拓展阅读
- 💡 Next.js Router Upgrade: Next.js is going to get nested routes, and a new design to work with Server Components and React 18 features
- 🧑🎨 The 3D design too Spline can now export to React-Three-Fiber: this can enable you to make your scenes interactive and add physics
- 🔗 Component Party: site to easily compare the syntax of React with other frameworks (Vue, Svelte, Solid...) on different use-cases
- 🏢 Convex: new serverless real-time database with a React binding. They just raised $27m and integrates well with Netlify or Vercel
- 🎥 The Story of Concurrent React: 10 minutes on the story bind Concurrent React, from 2016 to today. Great research work
- 📦 Ultra 1.0: the modern React meta-framework for Deno just annonced its v1
- 📦 React 18.1: mostly bugfixes
- 📦 useTilg: convenient React hook for debugging
- 📦 zustand v4.0.0-rc.1
- 📦 Gatsby 4.13
- 🐦 Using useReducer to manage one-way boolean state
- 📜 Building a Terminal Wordle Game with React Ink
- 📜 Managing React Monorepos with Nx
React-Native
Expo SDK 45 beta is now available
新的SDK Expo进入测试阶段,为期一周。一些很酷的新东西。
- React-Native 0.68.1: Expo升级到最新版本,但还没有启用Fabric渲染器
- 重新设计了Expo Go,更好地整合了EAS更新和查看/打开分支的能力。
- 一些库被迁移到JSI和/或Expo Sweet Module API中。
- 一个全新的Expo CLI(测试版),将在本地而不是全球范围内进行版本安装。
- Expo包装库已被废弃:原始的本地库可以通过配置插件使用
React Native Skia - For Us, For You, and For Fun
Skia是谷歌的2D引擎,你肯定也在使用它。Chrome、Flutter、Android... Shopify支持React-Native-Skia的开发,以提供React-Native中缺少的图形/2D原语,并且在实现复杂的设计时不会受到限制。该库提供了一个富有表现力的声明式API,但也提供了一个与Flutter兼容的命令式低级API,这可能有助于通过React-Native-Web和CanvasKit提供网络支持。
拓展阅读
- 📦 React-Native 0.69-rc.0: first version based on React 18, with the possibility of using concurrent features if you enable the new architecture!
- 📦 React-Native-Graph: new graph library with animations, based on React-Native-Skia
- 🎥 Charts with React-Native-Skia: latest video from William Candillon, related to the lib above 😉
- 🐦 React-Native-WishList preview: Marc Rousavy is working on a new powerful virtualized list lib, which should fix the perf shortcomings of the existing ones
- 🎥 RN.live: Jamon Holmgren's livestream channel
- 🎙️ RNR 233 - React 18 and the Future of React Native
- 📜 Using RevenueCat with Expo's Managed Workflow: shows how easy it is to integrate a native lib into Expo
- 📜 Twitter going all in on Jetpack Compose: It still fascinates me so much to know that Twitter uses React-Native on the web, but not React-Native on mobile 😄
- 📜 Apple Gets Ready to Eliminate Almost 30% of Apps in the App Store: take care, your old app could be unpublished 😅
- 📜 What is the performance of your users device?
- 📜 A performant way to use PouchDB@7 on React Native in 2022
其它
一个正在进行中的新工具,将你的TypeScript错误翻译成人类语言,易于理解,并有额外的解释(源)。它甚至可以与你的IDE整合(VS Code 拓展)。
Keeping TypeScript Type Guards safe and up to date
带来了一个我从未过的问题😅:如果你有一个基于对象属性的类型保护,而你添加了第二个属性,你的类型保护就会变质,但TypeScript仍然可以编译。
Extras:
- Web Scraping via Javascript Runtime Heap Snapshots: original scraping technique, which consists of extracting JS objects directly in memory
- Node 16.15: experimental
fetch
support backported - Lerna is now an officially dead project. The project is officially unmaintained, but there are alternatives like Nx and Turborepo
- Nx 14 freshly released
- Zaplib post-mortem: feedback that demonstrates once again that Rust and Wasm is not always faster than JavaScript
- WebAssembly vs Javascript: "don't use WebAssembly primarily for performance"
- Detecting UI components with TypeScript Compiler API
- Misusing TypeScript Assertion Functions for Fun and Profit
- SemVer for TS in Practice
- Narrowing Types in TypeScript
- google/wireit: upgrades your npm scripts to make them smarter and more efficient
- Four Eras of JavaScript Frameworks
订阅原文: