栗子前端技术周刊第 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 等,周刊内容也会不断优化改进,希望你们能够喜欢。

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

相关推荐
晴殇i几秒前
抛弃 JavaScript 立即执行函数,这个方案更简洁更优雅
前端·javascript
码是生活1 分钟前
鸿蒙开发排坑:解决 resourceManager.getRawFileContent() 获取文件内容为空问题
前端·harmonyos
zoahxmy09292 分钟前
Vue3 视频播放与截图功能实现
javascript·vue.js
婷婷婷婷4 分钟前
v-copyText 自定义指令 —— 复制文本内容
前端
waylon111136 分钟前
【HOC】高阶组件在Vue老项目中的实战应用 - 模块任意排序
前端·vue.js·面试
阳阳羊7 分钟前
Mpx 动画
前端
编程社区管理员7 分钟前
「2025最新版React+Ant Design+Router+TailwindCss全栈攻略:从零到实战,打造高颜值企业级应用
前端·react.js·前端框架
DJA_CR8 分钟前
解决在 TSX 中使用 `RouterView` + `KeepAlive` 不生效问题
前端·vue.js
前端爆冲18 分钟前
项目中无用export的检测方案
前端
旧味清欢|29 分钟前
关注分离(Separation of Concerns)在前端开发中的实践演进:从 XMLHttpRequest 到 Fetch API
javascript·http·es6