栗子前端技术周刊第 36 期 - TypeScript 5.5、React-Admin v5、华为“仓颉”发布...

🌰栗子前端技术周刊第 36 期 (2024.6.24 - 2024.6.30) :浏览前端一周最新消息,学习国内外优秀文章视频,让我们保持对前端的好奇心。

📰 技术资讯

  1. TypeScript 5.5 :TypeScript 的此次发布版本是功能最重要的版本之一,功能包括:推断类型谓词,改进某些场景下的类型推断,特别是数组和过滤;JSDoc @import 标记,用于在 JavaScript 文件中导入类型的新标记,不会对运行时产生影响;改善编辑器体验与 watch 模式等等。
js 复制代码
// 推断类型谓词
function makeBirdCalls(countries: string[]) {
  // birds: (Bird | undefined)[]
  const birds = countries
    .map(country => nationalBirds.get(country))
    .filter(bird => bird !== undefined); // 过滤 undefined
​
  for (const bird of birds) {
    // 以前版本:error: 'bird' is possibly 'undefined'。 5.5 不会报错,能正确推断类型。
    bird.sing(); 
  }
}
  1. React-Admin v5 :React-Admin 是一个封装完善的中后台应用框架,v5 版本添加了许多新功能和完成许多功能的改进,包括现在默认有一个主题切换器和一个深色主题、Data providers 在组件卸载时可以取消请求、useDefaultTitle() Hook 可以在任何地方返回应用标题等等。
  1. 华为"仓颉"发布:在上周华为开发者大会上,华为内部研发已久的国产自主编程语言仓颉终于正式对外官宣!仓颉语言作为面向未来的下一代编程语言,当前已经完成设计与实现并启动了开发者预览,未来将与 ArkTS 共同发展,为鸿蒙原生应用开发者提供极致高效的开发体验。熟悉 TS 的同学应该能很快上手 ArkTS,此次的仓颉,有兴趣的同学可以去更深入了解下。

📒 技术文章

  1. A Look at JavaScript's New Set Methods:了解 JavaScript Set 的新方法 - 新方法让你更容易地处理集合相关的功能,比如查找集合间的交集、并集和差集。在 Node 22+、Chrome/Edge 122+、Firefox 127+、Safari 17+ 中可用,现在已被视为"基线"功能。
ini 复制代码
// 查找交集
const intersectionSet = set1.intersection(set2);
  1. Understanding React Compiler: 了解 React 编译器 - React 团队新推出的实验性工具,可通过重写代码自动优化性能,但是否应该使用它,以及它的引擎是如何工作的?本文作者将带你一探究竟。
  2. 深入理解前端缓存:本文将带你深入理解缓存机制以及缓存时间的判断公式,让你知道如何合理的使用缓存机制来更好地进行性能优化。作者将前端缓存分成 HTTP 缓存和浏览器缓存两个部分来和大家一起交流。

🔧 开发工具

  1. simpleParallax:一个可为页面上的任何图片添加视差样式动画的简单库,支持以原生 JS 或 React 组件方式使用。
jsx 复制代码
import SimpleParallax from "simple-parallax-js";
​
const Component = () => (
  <SimpleParallax>
    <img src="image.jpg" alt="image" />
  </SimpleParallax>
)
  1. PixelMatch 6.0:高效的像素级图像比较库 - 给它两张图像,它就能突出显示差异。
  1. Matter.js 0.20:Matter.js 是一款适用于 web 的 JavaScript 2D 刚体物理引擎。

🚀🚀🚀 以上资讯文章选自常见周刊,如 JavaScript Weekly 等,周刊内容也会不断优化改进,希望你们能够喜欢。

💖 欢迎关注微信公众号:栗子前端

相关推荐
阿珊和她的猫4 小时前
v-scale-scree: 根据屏幕尺寸缩放内容
开发语言·前端·javascript
加班是不可能的,除非双倍日工资8 小时前
css预编译器实现星空背景图
前端·css·vue3
wyiyiyi9 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
gnip9 小时前
vite和webpack打包结构控制
前端·javascript
excel10 小时前
在二维 Canvas 中模拟三角形绕 X、Y 轴旋转
前端
阿华的代码王国10 小时前
【Android】RecyclerView复用CheckBox的异常状态
android·xml·java·前端·后端
一条上岸小咸鱼10 小时前
Kotlin 基本数据类型(三):Booleans、Characters
android·前端·kotlin
Jimmy10 小时前
AI 代理是什么,其有助于我们实现更智能编程
前端·后端·ai编程
ZXT10 小时前
promise & async await总结
前端
Jerry说前后端10 小时前
RecyclerView 性能优化:从原理到实践的深度优化方案
android·前端·性能优化