Svelte 月刊 - 2022 年 8 月
在1.0之前对
SvelteKit
的“load”进行了更改,并支持Vite 3和“Vite.config.js”!
—— DANIEL SANDOVAL 2022年8月1日
这个月有很多内容要讲……在 1.0 完成之前,SvelteKit
的设计将发生重大变化。 如果您还没有准备好,请查看 Rich
的讨论,修复负载,并在 1.0
#5748
之前收紧 SvelteKit
的设计。
此外,@dummdidumm (Simon H)
已加入 Vercel
全职从事 Svelte
工作,@tcc-sejohnson
已加入 SvelteKit
维护者团队! 我们非常高兴现在有更多的维护者致力于 Svelte
和 SvelteKit
的工作,并且已经注意到他们的影响。 7 月是自 SvelteKit
成立以来发生变化的第三大月份!
现在我们来看看其余的更新。。。
SvelteKit 中的新功能
动态导入的样式现在包含在SSR(#5138)中
改进
routes
和prop
更新以防止不必要的重新渲染 (#5654, #5671)对错误处理进行了许多改进(#4665、#5622、355619、”5616)
自定义Vite模式现在在SSR构建中得到尊重(#5602)
现在支持自定义Vite配置位置(#5705)
私有环境变量(又名“secrets”)现在更加安全。 现在,如果您不小心将它们导入到客户端代码中,您会看到一个错误(#5663,Docs)
Vercel 的 v3 构建输出 API 现在被用于 adapter-vercel (#5514)
vite plugin svelte已达到1.0,现在支持vite 3。您会注意到dev的新默认端口(端口5173)和预览(端口4173)(#5005,vite Plug svelte变更日志)
重大变化:
$app/env
中不再提供mode
、prod
和server
(#5602)svelte-kit CLI
命令现在使用vite
命令运行,并且需要vite.config.js
。 这将允许Vite
生态系统中的其他项目提供优先的支持,如Vitest
和Storybook
(#5332, Docs)endpointExtensions
现在是moduleExtensions
,可用于过滤参数匹配器(#5085,Docs)Node 16.9
现在是SvelteKit
的最低版本 (#5395)现在允许使用
%
编码的文件名。 如果您的路线中有%
,您现在必须使用%25
(#5056) 对其进行编码端点方法名称现在大写以匹配 HTTP 规范 (#5513, Docs)
writeStatic
已被移除以与Vite
的配置保持一致 (#5618)transformPage
现在是transformPageChunk
(#5657, Docs)package.json
中不再需要prepare 脚本
(#5760)adapter-node
在我们等待压缩库中的错误修复时不再进行任何压缩 (#5560)
有关更改的完整列表,请查看套件的 CHANGELOG。
Svelte 和语言工具的新功能
Svelte
组件(3.49.0,PR)现在支持@layer
CSS at-ruleSvelte
的语言工具和插件(105.20.0,PR)现在支持惰性 HTML attributeSvelte
插件现在将使用SvelteComponentTyped
类型,如果可用(105.19.0,PR)
社区展示
使用 Svelte 构建的应用和网站
- PocketBase 是一个开源的 Go 后端,只有一个文件和一个使用 Svelte 构建的管理仪表板
- Hondo 是一款多轮猜字游戏
- Hexapipes 是一个玩六角管拼图的网站
- Mail Must Move 是为那些想要完成更多工作的人制作的电子邮件
- Jot Down 是一个 Visual Studio Code 扩展,用于快速简单的记笔记
- Kadium 是一款用于掌握 YouTube 频道上传内容的应用
- Samen zjin we #1metS10 是一个活动网站,通过发送图纸或愿望来支持荷兰欧洲电视网决赛选手 S10
- On Writing Code 是一个学习编程设计模式的互动网站
- Svelte-In-Motion 可让您在浏览器中创建 Svelte 动画视频
- Svelte Terminal 是一个类似终端的网站
- Bulletlist 是一个简单的工具,只有一个目的:制作列表
- Remind Me Again 是一款可在 Mac、Linux 和 Windows 上切换提醒的应用程序
- Heyweek 是一款时间跟踪应用程序,专为渴望额外魅力的自由职业者打造
学习资源
由 Svelte 团队主演
- Svelte 纪录片出炉了! 在 Svelte Radio
- 初学者 SvelteKit by Vercel
- 挑战:通过构建泡泡游戏来探索 Svelte by Brittney Postma
- 让我们用 Svelte 编写一个客户端路由库 by lihautan
- Svelte Siren 七月谈话 - 与 Jess Sachs 在 Svelte 中进行测试
关注
- 10 个很棒的 Svelte UI 组件库 by LevelUpTuts
- 了解 SvelteKit 的工作原理和 SvelteKit 端点 by Joy of Code
- SvelteKit 使用 TS 和 Storybook 设置 by Jarrod Kane
- 使用 Svelte 构建应用程序! by Simon Grimm
- SvelteKit 身份验证,更好的方法 - 教程 by Pilcrow
阅读
- 一些各种各样的 Svelte 演示 by Geoff Rich
- 引导 Svelte 项目的三种方法by Thilo Maier
- 使用 Svelte 设计和构建应用程序by Hugo
- 在 SvelteKit 中通过 JS 定义路由by Max Core
- 将 Telegram api 与 SvelteKit 集成by Shivam Meena
- SvelteKit SSG:如何预渲染您的 SvelteKitby Rodney Lab
- ADEO 设计系统:使用 Svelte 和 Rollup 构建 Web 组件库by Mohamed Mokhtari
- Svelte手册by The Valley of Code
- 使用 Vitest & Playwright 测试 Svelte 组件by David Peng
- Phoenix 和 Svelte 的过渡应用程序by Nathan Cahill
技术演示
- 为 Svelte 带来最佳 GraphQL 体验by The Guild
- 使用 Stylify CSS 更快地设计您的 Svelte 网站by Stylify
- 改进了 Supabase 的 Auth Helpers(支持 SvelteKit)by Supabase
库、工具和组件
Lucia 是一个简单的、基于
JWT
的SvelteKit
身份验证库,可将SvelteKit
应用程序与数据库连接起来Skeleton 是一个用于 Svelte + Tailwind 的 UI 组件库
pass-composer 帮助您为 threlte 场景编写后处理通道
@crikey/stores-* 是 8 个库的集合,用于扩展 Svelte 商店以用于常见用例
Svelte Chrome Storage 是 Svelte 存储和 Chrome 扩展存储之间的轻量级抽象
Svelte Schema Form 是 JSON 模式的表单生成器
svelte-gesture 是一个库,可让您将更丰富的鼠标和触摸事件绑定到任何组件或视图
Snap Layout 和 - Universal-title-bar 将 Windows 11 的 snap 布局和标题功能引入 web 应用和 PWA。两者都可以作为 .svelte 模块或 Web 组件导入
svelte-adapter-bun 是用于生成独立 Bun 服务器的 SvelteKit 应用程序的适配器
json2dir 将 JSON 对象转换为目录树
Svelte Command Palette 是一个插入式命令面板组件
svelte-use-drop-outside 是一个 Svelte 动作,用于将元素放在区域外
PowerTable 是一个 JavaScript 组件,可将 JSON 数据转换为交互式 HTML 表格
svelte-slides 是使用 Reveal.js 的 Svelte 幻灯片放映模板
Svelte Theme Light 是一个基于 Svelte REPL 的 Visual Studio Code 主题
我们错过了什么吗? 在 Reddit 或 Discord 上告诉我们!
还在寻找 9 月份的活动吗? 快来加入我们在斯德哥尔摩举行的 Svelte 峰会! 立即获取您的门票。
下个月见!