JSer.info #456 - React互換のAPIを持つPreact X(10.0.0)がリリースされました。
Preact 9.xはスキップしてPreact 10.xになっています。
- Release Preact X - Virtuous DOM and the Fragments of Suspense · preactjs/preact
- What's new in Preact X | Preact: Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
Preact Xでは、Fragments、componentDidCatch、Hooks(preact/hooks
)、createContext、CSS Custom Propertiesの対応などが含まれています。
HooksはPreactのコアには含まれていませんが、preact/hooks
またはpreact/compat
をインポートすることで対応しています。
また、いままでは別モジュールとなっていたpreact-compat
がpreact/compat
という形でインポートするように変更されています。
// Preact 8.x
import React from "preact-compat";
// Preact X
import React from "preact/compat";
また、preact本体はdefault exportをやめたため、named importをして使う形に変更されています。
// Preact 8.x
import Preact from "preact";
// Preact X
import * as preact from "preact";
// Preferred: Named exports (works in 8.x and Preact X)
import { h, Component } from "preact";
Preact 8.xから10.xへのマイグレーションガイドも公開されているので、合わせて見てください。
ウェブサイト向けのLintツールであるwebhintのブラウザ拡張版がv1となりました。
beta版からの追加点として、
MDN browser compat dataを使ったクロスブラウザの互換情報の表示、カラーコントラストについてのHintの追加などが含まれています。
Chrome(lighthouse)のAuditとの違いとして、webhintはクロスブラウザに関するチェックをあげています。
The webhint extension doesn’t replace the existing audits tab you’ll find in the developer tools for Chrome and the new Chromium-based Edge browser. While there is a little overlap in the information provided, webhint and Lighthouse serve different purposes, and you may find yourself using both. One distinguishing feature of webhint that it’s meant to provide cross-browser insights, including compatibility with Safari, IE, Opera, and so on.
-- https://medium.com/webhint/announcing-the-webhint-browser-extension-abb22f4cfeb
TypeScript 3.7 Betaがリリースされました。
- Announcing TypeScript 3.7 Beta | TypeScript
- TypeScript 3.7 Iteration Plan · Issue #33352 · microsoft/TypeScript
ECMAScriptのStage 3 ProposalであるOptional ChainingとNullish Coalescingがサポートされています。
また、asserts
によるコントールフロー制御を行うAssertion Functionsがサポートされています。
その他には、--declaration
と--allowJs
の組み合わせのサポートが含まれています。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Release Preact X - Virtuous DOM and the Fragments of Suspense · preactjs/preact
github.com/preactjs/preact/releases/tag/10.0.0
Preact X(10.0.0)リリース。
Fragments
、componentDidCatch
、createContext
のサポート、Hooks APIのサポートなど
- What's new in Preact X | Preact: Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
- Upgrading from Preact 8.x | Preact: Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
Release v3.2.0 · facebook/create-react-app
github.com/facebook/create-react-app/releases/tag/v3.2.0
create-react-app 3.2.0リリース。
yarn build --profile
でproduction buildでのプロファイル対応、TSC_COMPILE_ON_ERROR
のサポートなど
vuejs/vue-next
Vue 3候補のソースコードが公開された
Announcing TypeScript 3.7 Beta | TypeScript
devblogs.microsoft.com/typescript/announcing-typescript-3-7-beta/
TypeScript 3.7 Betaリリース。
Optional Chaining、Nullish Coalescing、Assertion Functionsのサポート。
--declaration
と--allowJs
の組み合わせのサポート、TypeScriptファイル内で// @ts-nocheck
の追加など
Release v5.5.0 · GoogleChrome/lighthouse
github.com/GoogleChrome/lighthouse/releases/tag/v5.5.0
Lighthouse 5.5.0リリース。
Largest Contentful Paint(LCP)のサポート
Version 1.0 released : Node-RED
nodered.org/blog/2019/09/30/version-1-0-released
フローベースのビジュアルエディタを使って、Node.jsで動くプログラムを作成できるツールキットであるNode-RED 1.0リリース。
Announcing the webhint v1 browser extension for Microsoft Edge - Microsoft Edge Blog
webhint browser extension 1.0.0リリース。
プラグインでカスタマイズできるウェブサイト向けのLintツールのブラウザ拡張版。
MDN browser compat dataを使ったクロスブラウザの互換情報の表示、カラーコントラストについてのHintの追加など
アーティクル
I created the exact same app in React and Vue. Here are the differences. [2019 Edition]
ReactとVueでのTodoアプリを例にした比較。
React Hooksに対応したバージョン
Fixing layout instability | web.dev
web.dev/fixing-layout-instability/
PerformanceObserver
でCumulative Layout Shift (CLS)を計測し、どのようなレイアウトの変化が起きてるのかをWebPageTestで確認する方法について。
また、実際にプレースホルダーデータを使ってlayout instabilityを修正する方法について。
How to read a Web Page Test waterfall chart - Frontend Web Developer, Oxfordshire, UK - Matt Hobbs
nooshu.github.io/blog/2019/10/02/how-to-read-a-wpt-waterfall-chart/
WebPageTestのウォーターフォールチャートの読み方について。
図の要素ごとに解説やHTTP/1.1とHTTP/2での流れの違いなどについて書かれている
サイト、サービス、ドキュメント
Accessibility Support
スクリーンリーダごとのWAI-ARIAなどのアクセシビリティサポート状況についてまとめているサイト。
Can I Use...のアクセシビリティ版
ソフトウェア、ツール、ライブラリ関係
cevek/ttypescript: Over TypeScript tool to use custom transformers in the tsconfig.json
TypeScriptでのコンパイル処理に対して、プラグインで変換処理を追加できるコンパイラーの実装
algolia/shipjs: Take control of what is going to be your next release.
リリースの準備とリリースを行うツール。
semantic-releaseとは異なりすべてを自動で行うのではなく、Pull Requestを作成して、手動で確認やCHANGELOGの更新をしてからリリースを行うといったプロセスが取れる。
fengyuanchen/cropperjs: JavaScript image cropper.
github.com/fengyuanchen/cropperjs
Image Cropperライブラリ。
画像の切り抜き、回転、移動などができる画像加工を行うライブラリ
Bin-Huang/prray: "Promisified" Array, comes with async method supports(such as mapAsync). And it is compatible with normal array.
コールバック関数にAsync Functionを取るArrayの実装ライブラリ