跳至主要内容

Svelte 八月更新

Shadow DOM、导出和 await - 哦,我的天哪!

从 The Changelog(JS Party Ep. 182)到 Svelte Radio(第 29 集和 30 集),似乎大家这个月都在谈论 Svelte!此外,Shadow DOM 支持以及新的导出和 await 功能是 Svelte 的新增功能。

Svelte 新功能

7 月份是 Svelte 核心仓库自 2019 年底以来最活跃的一个月,我们确实努力减少了未完成的 PR 数量,并发布了 Svelte 3.39.0、3.40.0 和 3.41.0。除了以下新功能外,还添加了大量错误修复

  • |trusted 事件修饰符允许您在调用事件之前检查事件是否可信(#6137
  • 新的 svelte/ssr 包支持改进 SvelteKit SSR 的工作(#6416
  • 一个新的 errorMode 编译器选项,支持改进 TypeScript 文件的预处理(#6194
  • 您现在可以指定 ShadowRoot 作为创建组件时的 target - 从而可以在 Shadow DOM 中渲染 Svelte 组件(#5869
  • export { ... } from#2214)、export let { ... } =#5612)和 {#await ... then/catch}#6270)语法现在都可以在 Svelte 组件中使用

有关功能和错误修复的完整列表,请查看 Svelte 变更日志

SvelteKit 更新

  • prerender.force 现在是 prerender.onError,它允许您微调哪些错误会导致构建失败,哪些错误不会失败(#2007
  • 现在公开了 esbuild 的配置,以便与 SvelteKit 适配器一起使用(#1914
  • 现在,对于常见的配置错误(#1910)和编译器错误(#1827),错误消息更友好
  • 只有当目标主机与 SvelteKit 应用程序相同或它是其更具体的子域名时,才会传递 cookie(#1847
  • 打包时,index.js 导出现在将更改为目录导出 - 从而实现更友好的导入(#1905
  • Vite.js 的 mode 现在从 $app/env 公开(#1789
  • 全面改进类型(#1778#1791#1646

要查看 SvelteKit 的所有更新,请查看 SvelteKit 变更日志

来自 svelte/* 周围的功能和错误修复

  • 语言工具现在更好地支持“工作区信任”功能(在 VS Code 中使用)
  • 在 svelte2tsx 中,环境类型声明现在已重命名,以避免将来发生冲突的声明。现在用户需要自己提供环境类型定义 - 修复了 JS 输出
  • Sapper 发布了 v0.29.2,它修复了正则表达式路由、请求目录时的状态代码以及用户未提供 base 标签时的导出(变更日志

社区展示

应用和网站

正在寻找一个 Svelte 项目来参与?有兴趣帮助 Svelte 在网络上的表现更好吗? 如果您想为 Svelte Society 使用 SvelteKit 重写做出贡献,请查看 开放问题列表

教育内容

库、工具和组件

  • Svelte-Capacitor 刚刚发布了 v2.0.0 - 使使用 Svelte 和 Capacitor 构建 iOS 和 Android 的混合移动应用变得更加容易,并具有接近原生性能。
  • svelte-remixicon 是一个基于 Remix Icon 的 Svelte 图标库,包含 2000 多个图标。
  • SveltePress 是一个构建在 SvelteKit 之上的文档工具。
  • Svelte Starter Kit 是一个样板,可帮助您快速启动和运行 Svelte,并使用 Supabase 提供身份验证和用户配置文件。
  • Kahi UI 是一个 Svelte 优先的 UI 工具包,内置了暗模式。
  • typesafe-i18n 是一个有主见、完全类型安全、轻量级的本地化库,适用于 TypeScript 和 JavaScript 项目,没有外部依赖项。

查看社区网站 sveltesociety.dev,了解来自整个 Svelte 生态系统的更多模板、添加器和适配器。

下个月见!

想要更多更新?加入我们 RedditDiscord