Svelte 最新消息:2022 年 4 月
告別 fallthrough 路由,迎接參數驗證器!
這個月,我們感受到了 SvelteKit 處理頁面屬性的方式發生了轉變。過去需要 fallthrough 路由的最後一個使用案例,也就是驗證參數屬性,已被更具體的解決方案取代。
更多關於這點,以及 Svelte 的其他新消息,讓我們深入了解...
SvelteKit 的新功能
- 參數匹配器允許您在呈現頁面之前檢查 URL 參數是否匹配 - 取代了為此目的使用 fallthrough 路由的需求(文件,#4334)
- 現在可以直接從端點處理明確的重新導向 (#4260)
- 發布了
svelte-kit sync
(#4182)、TypeScript 4.6 (#4190) 和 Vite 2.9 - 新增了非阻塞的依賴項最佳化和開發模式下的實驗性 CSS 原始碼地圖,以及 SvelteKit 團隊貢獻的許多錯誤修復 (#4468)
新的配置選項
outDir
修復了在 monorepo 和其他希望輸出目錄位於專案目錄之外的情況下的路徑問題(文件,#4176)endpointExtensions
防止將 .js 和 .ts 檔案以外的檔案視為端點,除非您指定endpointExtensions
(文件,#4197)prerender.default
讓您可以預先渲染每個頁面,而無需在每個頁面檔案中編寫export const prerender = true
(文件,#4192)
重大變更
- 已移除 Fallthrough 路由。有關遷移提示,請查看 PR(#4330)
tabindex="-1"
僅在導航期間添加到<body>
(#4140 和 #4184)- 現在需要 Adapter 提供
getClientAddress
函數 (#4289) - 現在可以在生成的
Load
中單獨輸入InputProps
和OutputProps
(#4305) - 動態參數中不再允許使用
$
字元 (#4334) svelte-kit package
已被標記為實驗性,因此在 Kit 1.0 之後對其所做的變更將不被視為重大變更 (#4164)
Svelte 生態系統的新功能
- Svelte:為 TypeScript 和 Svelte 外掛程式使用者提供了許多新類型 - 包括
style:
指令 和 Svelte Actions (3.46.4 和 3.46.5) - 語言工具:Svelte 專案檔案現在可以透過引用來匯入/查找,而無需將其匯入到 TS 檔案中 (105.13.0)
- 語言工具:現在在 html 中支援使用
<!--#region-->
/<!--#endregion-->
進行區域折疊 (105.13.0)
社群展示
使用 Svelte 建立的應用程式和網站
- Launcher 是一個由 SvelteKit、Prisma 和 Tailwind 驅動的開放原始碼應用程式啟動器
- Paaster 是一個預設安全的端對端加密剪貼簿,使用 Svelte、Vite、TypeScript、Python、Starlette、rclone 和 Docker 構建。
- Simple AF Video Converter 是一個圍繞 ffmpeg.wasm 的 Electron 封裝器,使轉換影片格式更加容易
- Streamchaser 旨在透過集中式娛樂技術平台簡化電影、影集和紀錄片的搜尋
- Svelte Color Picker 是一個使用 Svelte 製作的簡單顏色選擇器
- ConcertMash 是一個小型網站,可與 Spotify API 互動,並根據您即將參加的音樂會產生新的播放清單
- Modulus 是一個設計+程式碼智庫,其主要使命是發展設計和技術
- Multiply 是一個以文化速度運作的整合公關和社群機構
- yia! 是紐西蘭的一項青年創新獎競賽
- Write to Russia 是一個社群電子郵件寫作平台,用於與公開的
.ru
電子郵件地址進行溝通 - Markdown Playground 是一個專門為您的 markdown 實驗而設的線上 Playground。
- RatherMisty 是一個簡單的天氣應用程式,具有來自 Open-Meteo 的天氣資料
- Minecraft Profile Pic (MCPFP) 是一個可以輕鬆產生 Minecraft 個人資料圖片的網站
- WebGL Fluid Simulation 是一個使用 Svelte 和 WebGL 建立的可配置流體模擬
- 這個 @NobelPeaceOslo 展覽 是使用印刷圖形、投影動態圖形、粒子動畫和生成聲音設計建立的
想為現代 SvelteKit 網站做出貢獻嗎?幫助建立 Svelte Society 網站!
學習資源
參加
- Svelte Summit:Spring 將於 2022 年 4 月 30 日舉行!加入我們的第 5 屆 Svelte 虛擬會議,在 YouTube 和 Discord 上舉行 🍾
閱讀
- Svelte(Kit) TypeScript 展示 + 一般 TypeScript 提示,作者:Hofer Ivan
- Svelte 中使用 @const 標籤的本地常數,作者:Geoff Rich
- 建構可重複使用的 Svelte 元件的設計模式,作者:Eric Liu
- Svelte 比 React 更好,作者:Hamilton Greene
- 使用 Svelte 和 D3 實際製作視覺化,作者:Connor Rothschild
- 使用 Svelte 延遲轉換協調多個元素,作者:Daniel Imfeld
- 使用 Svelte Inview 在滾動時產生動畫 - 小技巧,作者:Maciek Grzybek
- 使用 SvelteKit 延遲載入 Firebase 和 使用 Svelte 的 HeadlessUI 元件,作者:Captain Codeman
- SvelteKit 無障礙測試:自動化 CI A11y 測試,作者:Rodney Lab
- KitQL 和 GraphCMS 入門,作者:Scott Spence
- React ⇆ Svelte 對照表 列出這兩個程式庫之間的相似之處和差異 - 作者:Joshua Nussbaum
觀看
- Svelte 盛宴 | 異步,作者:pngwn
- 您應該知道的 6 個 Svelte 套件 和 基本的 React 到 Svelte 轉換,作者:LevelUpTuts
- SvelteKit 中的頁面/陰影端點,作者:WebJeda
- 自訂 Svelte 商店:高階商店,作者:lihautan
- SvelteKit 初學者入門(播放清單),作者:Joy of Code - 請參考 部落格指南
- 使用 Firebase 和魔法連結的完整堆疊 SvelteKit 身份驗證 🔐!🪄,作者:Johnny Magrippis
- SvelteKit 中的 Firebase 身份驗證!完整堆疊應用程式,作者:Ryan Boddy
程式庫、工具和元件
- SvelTable 是一個功能豐富、使用 Svelte 建立的資料表元件
- svelte-cyberComp 是一個使用 Svelte 和 TypeScript 編寫的強大、輕量的元件程式庫
- Flowbite Svelte 是一個非官方的 Svelte Flowbite 元件程式庫
- Svelte-Tide-Project 是一個適用於具有 Rust Tide 後端伺服器的 Svelte 前端應用程式的入門範本
- Fetch Inject 實作了一種效能最佳化技術,用於管理非同步 JavaScript 依賴項 - 現在支援 Svelte
- svelte-utterances 是一個基於 GitHub 議題構建的輕量級評論小工具
- Liquivelte 允許您使用類似 Svelte 的元件建立 Shopify 主題
- @storyblok/svelte 是您需要與 Storyblok API 互動並啟用即時視覺編輯體驗的 Svelte SDK
- @svelte-on-solana/wallet-adapter 是一個模組化的 TypeScript 錢包配接器和 UI 元件,適用於使用 SvelteJS 作為框架的 Solana/Anchor 應用程式
- svelte-lookat 建立一個 div,使其所有子元素在滑鼠游標或使用手機時跟隨使用者的臉部
請在 Reddit 或 Discord 上加入我們,繼續對話。
下個月見!