Fork me on GitHub

2019-08-27のJS: Nuxt.js 2.9.0(TypeScript)、ChromiumベースのMSEdge βリリース、data-fns 2.0.0

Edit on GitHub 編集履歴を見る

JSer.info #450 - Vue.jsをつかったフレームワークであるNuxt.js 2.9.0がリリースされました。

v2.5.0で本体に統合されたTypeScriptサポートがリファクタリングされ、TypeScript関係の処理がコアからパッケージとして分離されています。
この変更により一部パッケージの入れ替えが必要になっているため、2.8からのマイグレーション方法については次のページに書かれています。


Dateを扱うライブラリであるdate-fns 2.0がリリースされました。

破壊的な変更として、それぞれの関数が直接日付文字列を扱うのではなく、Dateオブジェクトを扱うように変更されています。
そのため、文字列ではなく、文字列をparseparseISOでDateオブジェクトに変換してから渡す必要があります。

// Before v2.0.0
addDays('2016-01-01', 1)

// v2.0.0 onward
addDays(parseISO('2016-01-01'), 1)

また、format関数を仕様変更、Direct requireするモジュール名をcamelCaseに変更、一部関数名や引数の順番の変更、unitオプションの値の変更などが含まれています。
変更点の詳細は次のCHANGELOGにまとめられています。


JSer.infoをサポートするには

JSer.info Sponsors

JSer.info SponsorsGitHub SponsorsとしてJSer.infoを支援してくれている方々です。


ヘッドライン


Release v2.9.0 · nuxt/nuxt.js

github.com/nuxt/nuxt.js/releases/tag/v2.9.0

Vue TypeScript library ReleaseNote

Nuxt.js 2.9.0リリース。
Node.js 8.9.0未満のサポート終了、TypeScriptサポートをコアから分離、vue-meta 2.0.0にアップデートなど


Node v12.9.0 (Current) | Node.js

nodejs.org/en/blog/release/v12.9.0/

node.js ReleaseNote

Node.js 12.9.0リリース。
V8 7.6へアップデート、streamのReadbleStreamにreadableEnded、WritableStreaにwritableEndedプロパティの追加など


Microsoft Edge Insider Channels

www.microsoftedgeinsider.com/en-us/download

MSEdge news

ChromiumのMicrosoft Edgeのベータ版がリリースされた


Announcing styled-components v5: Beast Mode 💪🔥 - 💅 styled-components - Medium

medium.com/styled-components/announcing-styled-components-v5-beast-mode-389747abd987

React CSS library ReleaseNote

styled-components v5 ベータリリース。
破壊的な変更はなし。パフォーマンスの改善、React DevToolsの対応改善、RTLのサポートなど


Release: 6.11.0 - 📣 announcements - npm forum

npm.community/t/release-6-11-0/9572

npm ReleaseNote

npm 6.11.0リリース。
peerDependenciesをOptionalと明示できるpeerDependenciesMetaフィールドの追加。インストール時の警告を抑制できる


Release v2.0.0 · date-fns/date-fns

github.com/date-fns/date-fns/releases/tag/v2.0.0

JavaScript library ReleaseNote

date-fns 2.0.0リリース。
日付文字列の代わりにparseISOなどでパースしたオブジェクトを受け取るように変更、format関数を仕様変更、モジュール名をcamelCaseに変更、関数名や引数の順番の変更など


アーティクル


Learning CSS by reading specs

www.chenhuijing.com/blog/learning-css-by-reading-specifications/

CSS spec article

CSSの仕様でCSSを学ぶ話


Promise.allSettled と Promise.any | blog.jxck.io

blog.jxck.io/entries/2019-08-20/promise-allsettled-any.html

Promises JavaScript ECMAScript article

ECMAScript ProposalのPromise.allSettledPromise.anyを含めたPromiseの状態に対するハンドリングについてのまとめ


Progressive Web Apps in multi-origin sites  |  web.dev

web.dev/multi-origin-pwas/

ServiceWorker article PWA

クロスオリジンなサイト間でのPWAについて。
Service Worker、キャッシュ、Promptなどについて。
複数のoriginでのPWAは難しい問題について


Puppeteerで不要なCSSを消す - Cybozu Inside Out | サイボウズエンジニアのブログ

blog.cybozu.io/entry/2019/08/20/170000

CSS JavaScript AST article

PuppeteerでCSSカバレッジを取り、PostCSSでCSSを編集して使われてないCSSを削除する話


Using Native JavaScript Modules in Production Today — Philip Walton

philipwalton.com/articles/using-native-javascript-modules-in-production-today/

JavaScript module article

ES moduleをそのまま使うためのテクニックについての話。
RollupをつかってnpmモジュールごとにES moduleのchunkを作成し、<script module>でのロード、modulepreloadでのpreload。
Dynamic Importでの動的ロードとpolyfill、ES moduleをサポートしてない環境への<script nomodule>での読み込みについてなど。


ソフトウェア、ツール、ライブラリ関係


clean-code-typescript | TypeScriptの為のクリーンコード

msakamaki.github.io/clean-code-typescript/

TypeScript document 翻訳

clean-code-typescriptの翻訳


nodegui/nodegui: A library for building cross-platform native desktop applications with JavaScript and CSS like styling.

github.com/nodegui/nodegui

JavaScript node.js GUI library

Node.jsのQtバインディングライブラリ。
Qtを使ったGUIをNode.jsから作成できる。


pagemap · mini map for web pages · larsjung.de

larsjung.de/pagemap/

JavaScript library canvas

Canvasを使ってウェブサイトのminimapを描画するライブラリ


parcel-bundler/watcher: 👀 A native C++ Node module for querying and subscribing to filesystem events

github.com/parcel-bundler/watcher

node.js C++ library

C++で書かれたファイル監視のNode.jsライブラリ。Parcelで利用されている。
監視しているファイルの状態をsnapshotで保存でき、watcherが起動してないときの差分も検出できる。


GoogleChromeLabs/dynamic-import-polyfill: A fast, tiny polyfill for dynamic import() that works in all module-supporting browsers

github.com/GoogleChromeLabs/dynamic-import-polyfill

JavaScript library polyfill

Dynamic import()のpolyfillライブラリ。


この記事へ修正リクエストをする
JSer.info Slackに参加する