JSer.info #479 - Next.js 9.3がリリースされました。
Next.js 9.3ではnext export
などにおける静的サイトビルド(Static Site Generation)に関する変更が多く含まれています。
新たに3つのライフサイクルAPIが追加されています。
getStaticProps
ビルド時に、データを取得するgetStaticPaths
ビルド時に、Dynamic Routingとデータを使ってプリレンダリングしたページを生成するgetServerSideProps
サーバサイドでリクエストごとにデータを取得する
詳しくはData fetching - Documentation | Next.jsなどのドキュメントを参照してください。
また、Sassをビルトインサポートし、pages/404.js
で静的な404ページのカスタマイズができるようになるなどの変更も加えられています。
GitHubによるnpm, inc.(npm registryやnpm CLIの開発を行う会社)の買収が発表されました。
今後、npm private registryはGitHub Package Registryへ移行できるようにしていき、
npmのpublic registryはそのまま継続していく形になるようです。
また、npm, inc.はnpm public registryとnpm CLIの開発に専念にしていくとのことです。
ECMAScript 2015のEditorであるAllen Wirfs-Brockによる「JavaScriptの最初の20年」についてPaperが公開されいます。
History of Programming Languages(HOPL)向けに書かれたものですが、
JavaScriptの誕生からECMAScript 2015(ES6)までの歴史が詳細な資料と共にまとめられています。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Release Worker Plugin 4.0 · GoogleChromeLabs/worker-plugin
github.com/GoogleChromeLabs/worker-plugin/releases/tag/4.0.2
webpack向けのWorker Plugin 4.0リリース。
ES Modulesのサポート、worker-plugin/loader!<path>
のサポート、SharedWorker
のサポートなど
Node v13.11.0 (Current) | Node.js
nodejs.org/en/blog/release/v13.11.0/
Node.js 13.11.0リリース。
AsyncLocalStorage#enterWith
の追加、--jitless
オプションをNODE_OPTIONS
に指定できるように、wasi
モジュールにreturnOnExit
オプションを追加など
Blog - Next.js 9.3 | Next.js
Next.js 9.3リリース。
ビルド時にデータを取得するgetStaticProps
、ビルド時にDynamic Routingとデータを元にページを生成するgetStaticPaths
の追加。
サーバサイドでリクエストごとに呼び出されるgetServerSideProps
の追加。
Sassをビルトインサポート、pages/404.js
で静的な404ページのカスタマイズができるようになるなど
npm is joining GitHub - The GitHub Blog
github.blog/2020-03-16-npm-is-joining-github/
npm incがGitHubに買収された。
npm private registryはGitHub Package Registryに移行していく方針で、npmはpublic registryとCLIに注力していく方針
Release 6.0.0-beta.0 (2020-03-11) · GoogleChrome/lighthouse
github.com/GoogleChrome/lighthouse/releases/tag/v6.0.0-beta.0
Lighthouse 6.0.0βリリース。
Metricsの更新、performanceスコア計算方法の変更。
また、Cumulative Layout Shift (CLS)、文字コード、アクセシビリティに関するAuditの追加など
アーティクル
Observable
observablehq.com/@mitvis/introduction-to-d3
インタラクティブなD3.js入門記事
Alternatives to enums in TypeScript
2ality.com/2020/02/enum-alternatives-typescript.html
TypeScriptでのenumとunion typesについて
Slow Code HATES him! Optimising a web app from 1 to 60fps
blog.scottlogic.com/2020/02/17/minesweeper-optimisation.html
マインスイーパ的な100x100のセルを更新するゲームのパフォーマンス最適化について。
ステートと更新する領域の最適化、DOMレイアウトのトリガーとなるCSSの削除、透明テキストの削除、レイヤーの分割、Canvasを使ったレンダリングなどについて
The History of the URL
blog.cloudflare.com/the-history-of-the-url/
URLの歴史についての記事。
URLがどのようにできたのかの経緯、フラグメント、Basic認証などについて
Bootstrap 5 release date and what's new about it - Themesberg
themesberg.com/blog/design/bootstrap-5-release-date-and-whats-new
Bootstrap 5の変更予定についての紹介記事。
jQueryの削除、IE 10のサポート終了、SVGアイコンなど
‘CSS X’ | W3C Blog
www.w3.org/blog/2020/03/css-x/
CSS 4はなぜないのかについての解説記事。CSSの仕様開発の歴史、現在のCSS仕様に全体としてのLevelがない理由についてなど
type-only imports — A new TypeScript feature that benefits Babel users
levelup.gitconnected.com/improving-babel-support-for-typescript-with-type-only-imports-28cb209d9460
TypeScriptのisolatedModules
とBabelのTypeScriptサポートの挙動について。
曖昧なre-exportの問題とTypeScript 3.8で導入されたimport type
/export type
での解決について。
スライド、動画関係
JavaScript: The First 20 Years
www.wirfs-brock.com/allen/posts/866
ECMAScript 2015のEditorであるAllen Wirfs-BrockによるJavaScriptの歴史についての論文。
サイト、サービス、ドキュメント
RedwoodJS - Bringing Full-stack to the JAMstack
JAMstackフレームワーク。
React、GraphQL、Prismaを使ったフレームワーク
ソフトウェア、ツール、ライブラリ関係
vriad/zod: Typescript-first schema validation with static type inference
TypeScriptの型チェックとRuntimeでの型チェックを行うスキーマライブラリ。
ライブラリが提供するAPIを使ってスキーマを定義する
lukeed/uid: A tiny (134B) and fast utility to generate random IDs of fixed length
指定文字数のランダムな英数文字列を生成するライブラリ
書籍関係
Build a Native Desktop GIF Searcher App Using NodeGui — SitePoint
www.sitepoint.com/build-native-desktop-gif-searcher-app-using-nodegui/
QtベースのNode.js向けのGUIフレームワークであるNodeGuiを使ってアプリを作るチュートリアル記事。
GIPHY APIを使ってGIFファイル表示するアプリの開発をしながら、NodeGuiについて見ていく記事