前端週刊第三十一期

2022-08-07 18:02:09

前端週刊發表每週前端技術相關的大事件、文章教學、一些框架的版本更新、以及程式碼和工具。每週定期發表,歡迎大家關注、轉載。
如果外連不能存取,關注公眾號前端每週看,裡面有解決辦法

大事件

  • JS1024 2022 競賽優勝者—— JS1024 是一項「程式碼高爾夫」競賽,您有 15 天的時間在 1024 位元組內建立 JavaScript 或 GLSL 程式。這會產生許多創意,並帶有出色的(非縮小)原始碼可供檢視。獲勝的 JS 條目是這款古怪的打字遊戲,獲勝的基於著色器的條目是3D 隧道體驗。這裡有很多東西要學,因為這些人使用了書中的每一個技巧,包括在一個使用Brotli 和特製 WOFF2 字型檔案(!)

  • Docusaurus 2.0 釋出——Docusaurus 支援的站點在 JS 空間中無處不在(例如Babel 檔案),經過四年的努力,流行的 React 支援的、以檔案為中心的靜態站點生成器的2.0 版就在這裡。從頭開始重建,它新增了MDX支援、新的外掛系統、主題、暗模式、SPA 導航、離線支援等等。

  • Electron 20:跨平臺桌面應用程式框架——20 聽起來像是一個很大的、圓形的版本號,但它主要是一個典型的版本。Chromium 升級到 v104,V8 升級到 10.4,Node 升級到 16.15.0。Windows 獲得了「沉浸式黑暗模式」,Electron 視窗現在可以「浮動」在全螢幕應用面板樣式上。

文章

  1. 檢查原生 JavaScript 函數是否是「猴子修補程式」 — 隨著 JavaScript 的活力,函數可能會被覆蓋(或「猴子修補程式」,因為有些人稱之為執行時修改的想法),但是有(不完美的)方法來檢視是否這已經發生了。

  2. 關於用 Bud 更快地構建現代Web 應用程式 — Bud(不,不是Bun)是一個相對較新的 Go(lang) 和 JavaScript 驅動的全棧 Web 框架,有很多好主意 – ▶️ 這個 15 分鐘的視訊建立一個駭客新聞克隆這是一個有趣的演示。如果 Go 在後端適合您,那麼值得一看。

  3. React 中從 500 毫秒到 1.7 毫秒 — 緩慢的自定義網格觸發了分析一些瓶頸的旅程,隨後進行了一些調整,從而顯著提高了效能。

  4. util.parseArgs()在 Node.js 中解析命令列引數 — 今年 Node 18.3 中新增的一項功能。

框架釋出

  1. Parcel 2.7
  2. Ember 4.6
  3. Ionic 6.2 - 跨平臺應用程式構建工具包。
  4. Redwood 2.2 – React 支援的全棧框架。
  5. 賽普拉斯 10.4 – 任何基於瀏覽器的流行測試方法。
  6. Ohm 16.4 – 解析器/直譯器構建工具包。
  7. React Native Boilerplate 3.5 – RN 應用程式的入門模板。
  8. Stripe Node 10.0 – Stripe API 的 Node.js 庫。
  9. Electron Store 8.1 - Electron 應用程式的簡單資料永續性。
  10. Meriyah 4.3 – 相容的、自託管的 JS 解析器。( Demo )
  11. React Spreadsheet Grid 2.3 – React 的類似 Excel 的網格元件。
  12. Inferno 8.0.2 – 快速、類似 React 的庫。
  13. Peaks.js 2.0.3 – BBC 的音訊波形 UI 元件。

程式碼和工具

  1. vue-grid-layout:適用於 Vue.js 的可拖動和可調整大小的網格佈局:類似於Gridster.js(來自 jQuery 時代!),但適用於 Vue.js。主頁上有一個演示。

  2. safe-json-value:當 JSON 序列化不能失敗時:防止JSON.serialize()丟擲異常、更改型別或以其他方式意外轉換值,因為有時您需要那種保證。

  3. colorgrad:高效能、Rust 驅動的顏色漸變庫:在幕後使用 Rust 編譯到 WebAssembly——非常現代!如果您也想嘗試它,它也是一個很好的小型程式碼庫,可以用來學習該技術。

  4. Embla Carousel 7: Carousel with Fluid Motion 和「Swipe Precision」:一個備受詬病的 UI 元素,但這些範例對我們來說效果很好。與庫無關,但如果需要,可以輕鬆整合 React、Vue 和 Svelte。

  5. Nativefier:使任何網頁成為桌面應用程式:一個基本的 Node.js 驅動工具,用於為任何使用 Electron 作為 web 檢視的網站建立桌面「應用程式」。適用於 Windows、macOS 和 Linux。

  6. ts-version:從 Types 存取當前的 TypeScript 版本:建立者說得最好: 「對 TS 版本如何處理您的包略有不同感到沮喪,但又不想使用 TypesVersions 釋出您的型別的完整副本?現在您可以根據 TS 版本調整您的型別!」