Svelte 11 月更新
SvelteKit 和 Svelte 中更好的表单、路由和内联样式
对于 Svelte 社区来说,10 月份非常忙碌。use:enhance
和高级路由在 SvelteKit 中获得了一些很棒的改进,而 Svelte 编译器发布了一个小版本来改善日常开发体验。
还有一个巨大的展示案例要介绍……所以让我们开始吧!
SvelteKit 的新功能
use:enhance
的新update
方法允许您轻松地找回默认的表单行为,同时用您自己的逻辑增强它(文档、#7083 和 #7326)- 路由现在可以使用
[[optional]]
参数了(文档、#7051) goto
现在拥有invalidateAll
,用于(重新)运行属于新活动页面的所有load
函数(文档、#7407)config.kit.paths.base
现在用于适配器查找静态资产 - 修复了adapter-netlify
、adapter-vercel
、adapter-cloudflare
和adapter-cloudflare-workers
中的 404 问题(#4448)
重大更改:
Svelte 更改
- 新的辅助功能警告
a11y-click-events-have-key-events
和a11y-no-noninteractive-tabindex
现在将在您的组件缺少必需的关键事件或 tabindex 时发出警告。而a11y-role-has-required-aria-props
将不再在元素与其语义角色匹配时发出警告(3.51.0) <svelte:component>
和<svg>
现在支持--style-props
(3.51.0,组件示例:之前 和 之后,SVG 示例:之前 和 之后)- 现在支持组件事件处理程序的“空值”值(3.51.0,示例)
- 现在可以将作用域样式应用于
<svelte:element>
(3.51.0,示例) - 您现在可以在内联样式标签中使用
important
:style:foo|important
(3.52.0,#7365) - 在不使用
rel="noreferrer"
的情况下使用<a target="_blank">
时,现在将抛出警告(3.52.0,#6188)
Tom Smykowski 还发布了关于3.52.0 中所有更改的精彩总结!有关 Svelte 编译器的所有更改(包括即将发生的更改),请查看更改日志。
社区展示
使用 Svelte 构建的应用和网站
- AttendZen 是一个用于面对面、虚拟或混合活动的活动管理和营销平台
- Gram Jam 是一款使用 SvelteKit 的具有挑战性的每日文字游戏
- Collabwriting 是您团队的实用知识库
- Dazzle 是一款使用 Svelte 和 DallE 制作的益智游戏
- Figma Autoname 插件 可一键自动命名您的 Figma 图层
- DECK 是一款适用于 macOS、Ubuntu 和 Windows 的功能强大且高性能的本地 Web 开发工作室
- Asm 编辑器 是一款用于编写和运行 m68k 汇编代码的 Web 应用程序
- Nucleus 是一款文本编辑器,其简洁易用的用户界面灵感来自 Visual Studio Code、Atom、Fleet 等
- Observer 是 Arth Panel 的前端,Arth Panel 是一个开源且自托管的 Minecraft 服务器面板
- .PLAN 是一款基于云的笔记应用,支持 Markdown 和分段
- Stablecog 是一款简单、免费且开源的 AI 图片生成器
- FreeSpeech AAC 是一款用 TypeScript 编写的免费开源辅助通信应用程序
- sqrdoff 是一款井字游戏,可以与朋友一起玩
- itty 是对传统缩短链接的新尝试
- splits 允许您跟踪您的分段时间、计算您的比赛配速,成为一名更好的运动员
- Weaver 是一款用于创建织造图的应用程序
学习资源
观看
- Svelte 入门 - Brittney Postma 由 fitcevents 提供
- 从零开始学习 Svelte 与 Geoff Rich:Svelte 教程 由 Kelvin Omereshone 提供
- 如何在 Svelte Kit 中连接到 MongoDB 由 LevelUpTuts 提供
- 使用 Cookie 进行 SvelteKit 身份验证、使用 Svelte 制作打字游戏 和 带有自动类排序的 SvelteKit Tailwind CSS 设置 由 Joy of Code 提供
- 使用 SvelteKit 和 PocketBase 进行身份验证 和 SvelteKit 中的表单操作(+页面) 由 Huntabyte 提供
- Sybil - 第 1 集 - 使用 SurrealDB 进行 Rust 知识管理 由 Raphael Darley 提供
阅读
- 在 React 中工作后,我错过了 Svelte 的 4 件事 和 使用 Svelte 组件创建动态社交卡片图片 由 Geoff Rich 提供
- Storybook 7.0 中的一流 Vite 支持(包括 Svelte 和 SvelteKit)由 Ian VanSchooten 提供
- WebStorm 将提供更好的 Svelte 支持 来自 JetBrains
- 暗黑模式 切换由 pyronaur 提供
- 使用 Svelte 的 HeadlessUI 组件 由 Captain Codeman 提供
- 在 SvelteKit 中使用 Sequelize 由 MetaZebre 提供
- 在 SvelteKit 网站上实现维护模式 由 Andreas Söderlund 提供
- ActionStore:Rails 的实时 Svelte 存储 由 Stefan Buhrmester 提供
- Svelte CSS 图片滑块:带弹性过卷 和 SvelteKit 本地边缘函数:本地主机上的边缘 由 Rodney Lab 提供
- 使用插槽属性创建 Svelte 选项卡组件 由 Shinichi Okada 提供
- Sky Cart:一个开源的、与云无关的购物车,使用 Stripe Checkout 由 Stripe 的 Mike Bifulco 提供
库、工具和组件
- Threlte 是一个用于 Svelte 的组件库,用于在 Svelte 应用中声明式和状态驱动地构建和渲染 three.js 场景。再次推荐它是为了突出其示例中的新“游乐场”按钮
- Svelte Turnstile 是一个将 Cloudflare 的 Turnstile(一种新的 CAPTCHA 替代方案)集成到 Svelte 应用中的库
- ActionStore 允许您通过 ActionCable 将数据直接推送到 Svelte 存储中
- SvelteKit +
<is-land>
是使用@11ty/is-land
在 SvelteKit 中进行部分水化的实验 - Svelte Color Select 是一个用于 Svelte 的 Okhsv 颜色选择组件,使用 OKLab 感知颜色空间
- svelte-awesome-color-picker 是一个高度可定制的颜色选择器组件库
- rx-svelte-forms 创建了受 Angular 反应式表单启发的反应式 Svelte 表单
- svelte-wc-bind 可以在 Svelte Web 组件中实现双向数据绑定
- svelte-preprocess-style-child-component 允许您使用类似于 CSS Shadow Parts 的语法来设置子组件内部元素的样式
- unplugin-svelte-components 允许按需组件自动导入 Svelte
- sveltekit-search-params 旨在成为在 SvelteKit 中读取和写入查询搜索参数的最快方法
- svelte-crop-window 是一个用于图像和视频的裁剪窗口组件,支持触摸手势(捏合缩放、旋转、平移),以及鼠标滚轮缩放、鼠标拖动图像和右键单击旋转
- 开放图谱图像生成 允许您在 SvelteKit 中从 HTML/CSS 动态生成开放图谱图像,无需浏览器
- Svelte Tap Hold 是一个用于 Svelte/SvelteKit 的极简主义点击并按住组件
- svelte-copy 的新版本允许您自定义导致文本复制到剪贴板的事件
UI 套件、集成和启动器
- SvelteKit Statiko 是一个用于 SvelteKit 静态项目的具有多种功能的助手
- Svelte-TailwindCSS UI (STWUI) 是一个基于 Tailwind 的 UI,目前处于预发布测试阶段
- KitBase 是 SvelteKit 和 PocketBase 的启动模板
- UnoCSS Vite 插件(svelte-scoped) 是 Vite/SvelteKit 的作用域 CSS 实用程序
- SvelteKit Auth 应用 是一个关于如何使用 JsonWebToken 和 Prisma 使用 SvelteKit 创建身份验证系统的示例
- SvelteKit Supabase 仪表盘 是一个受 Supabase UI 启发的简单仪表盘,使用 SvelteKit 作为前端,Supabase 作为后端
- Supakit 是 SvelteKit 的 Supabase 身份验证助手
- @bun-community/sveltekit-adapter-bun 是一个用于 SvelteKit 应用的适配器,它生成一个独立的 Bun 服务器
- hooks-as-store 允许你在 Svelte 应用中使用 React 自定义 Hook
有趣的库
- svelte-typewriter-store 是在 Svelte 中实现打字机效果的最简单方法
- Aksel 是你网站上需要的海鸥
- Svelte-Dodge 使组件躲避指针
本月就到这里了!如果你发现我们错过了什么,请在 Reddit 或 Discord 上告诉我们。
下个月见 👋