Fork me on GitHub

2019-05-28のJS: express 4.17.0、Firefox 67.0、TypeScriptのstrictNullCheckを有効化するステップ

Edit on GitHub 編集履歴を見る

JSer.info #437 - Node.jsサーバフレームワークのexpress 4.17.0がリリースされました。

ビルトインmiddlewareとしてBodyをBufferへパースするexpress.raw、Bodyをテキストにパースするexpress.textの追加されています。

const app = express()
app.use(express.raw(options));

これはもともとbodyParserにあったものがexposeされてた形になっています。

ただし、これらのmiddlewareは現在開発中の5.0では別の場所に移動する可能もありそうです。


Firefox 67.0がリリースされました。

開発者ツールやブラウザのパフォーマンスが改善されています。
開発者ツールについては次のページで詳しく解説されています。

また、あまり利用されていなかったことを理由に開発者ツールからCanvas debugger、Web Audio Editor、Shader editorが削除されています。
代替ツールについても紹介されているので、詳しくは次のページをみてください。

その他にもCSSのprefers-color-schemeのサポート、Cross-Origin-Opener-Policy HTTPヘッダのサポート、private modeでlocalStorageへのアクセス時に例外が発生しなくするといった変更が含まれています。


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

JSer.info Sponsors

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


ヘッドライン


Node v12.3.0 (Current) | Node.js

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

node.js ReleaseNote

Node.js v12.3.0リリース。
wasmファイルをimportできる--experimental-wasm-modulesオプションの追加、Readable.fromの追加など


Ember.js - Ember 3.10 Released

blog.emberjs.com/2019/05/21/ember-3-10-released.html

JavaScript library ReleaseNote

Ember 3.10リリース。
ネストしたコンポーネントやビルトインコンポーネントを<Input />のようにAngle bracketで記述できるように、Decoratorのサポートなど


Release 4.17.0 · expressjs/express

github.com/expressjs/express/releases/tag/4.17.0

node.js server ReleaseNote

express 4.17.0リリース。 middlewareとしてBodyをBufferへパースするexpress.raw、Bodyをテキストにパースするexpress.textの追加。
X-Forwarded-Hostでカンマ区切りの複数Hostに対応など


Firefox 67.0, See All New Features, Updates and Fixes

www.mozilla.org/en-US/firefox/67.0/releasenotes/

Firefox ReleaseNote

Firefox 67.0リリース。
パフォーマンスや開発者ツールの改善、Cross-Origin-Opener-Policyの実装。
開発者ツールからCanvas debugger、Web Audio Editor、Shader editorを削除など


アーティクル


Folding the DOM - Josh W. Comeau's Blog

www.joshwcomeau.com/posts/folding-the-dom/

CSS JavaScript React article tutorial

CSSを使って画像の折りたたみ表現を実装していくチュートリアル。
Position、Transform、Perspectiveを組み合わせて折りたたみのアニメーションを実装していく話


Strict null checking the Visual Studio Code codebase

code.visualstudio.com/blogs/2019/05/23/strict-null

VSCode TypeScript article

VSCodeのコードベースでTypeScriptのstrict null checkを有効化した話。
strictNullCheckfalseのときによく起きていた問題と1800ファイルあるコードをどのように修正していったかについて。
strictNullCheckを有効化したtsconfig.jsonを作り、filesに追加しながら修正していった


Graphics Team ships WebRender MVP! – Mozilla Gfx Team Blog

mozillagfx.wordpress.com/2019/05/21/graphics-team-ships-webrender-mvp/

firefox article

Firefox 67でNVIDIAのグラフィックカードを利用してるユーザー(4%)向けて、GPUベースのレンダラであるWebRenderをロールアウトしていくリリーススケジュールについて


Handling Errors in Vue.js

www.raymondcamden.com/2019/05/01/handling-errors-in-vuejs

Vue article

Vueでのエラーハンドリングについての記事。
Vue.config.errorHandlerVue.config.warnHandlerrenderErrorerrorCapturedについて


Paint Holding - reducing the flash of white on same-origin navigations  |  Web  |  Google Developers

developers.google.com/web/updates/2019/05/paint-holding

Chrome article browser dart

Chrome 76でページ遷移時にページを真っ白にするのではなく、最後の描画を維持した状態で切り替わるようにするPaint Holdingという仕組みが入るという話


SPAにおける状態管理: 関数型のアプローチも取り入れるフロントエンド系アーキテクチャの変遷 - エンジニアHub|若手Webエンジニアのキャリアを考える!

employment.en-japan.com/engineerhub/entry/2019/05/23/103000

JavaScript article

SPAにおける状態管理の変化について。
Backbone.jsでのModel/View/Controller、Two Way Data-Binding、Fluxなどの状態管理の問題と解決したことについて


WebAssembly at eBay: A Real-World Use Case

www.ebayinc.com/stories/blogs/tech/webassembly-at-ebay-a-real-world-use-case/

WebAssembly JavaScript article

WebAssemblyのユースケースとしてバーコードリーダを実装した話。
C++からemscriptenでコンパイルしたwasmを使うことで、JavaScriptの実装よりもFPSが上がった。
しかし、カメラの特性により認識率がいまいち上がらず、C++の実装2つとJavaScriptの実装を組み合わせて利用した話


サイト、サービス、ドキュメント


wagerfield/parallax: Parallax Engine that reacts to the orientation of a smart device

github.com/wagerfield/parallax

JavaScript library browser

ブラウザのViewportのサイズやスクロール、マウスの動きなどの変化を監視できるライブラリ。


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


projectfluent/fluent.js: JavaScript implementation of Project Fluent

github.com/projectfluent/fluent.js

i18n library

ローカライズフレームワーク。
FTLという構文で記述し、Intlオブジェクトをベースにしたローカライズを行う。


yankouskia/hurried: ⚡️ JavaScript library for parallel code execution

github.com/yankouskia/hurried

node.js JavaScript library

worker_threadモジュールを使ったNode.js向けのThreadライブラリ


azu/exponential-backoff-generator: Exponential backoff generator. Provide robust retry function.

github.com/azu/exponential-backoff-generator

JavaScript library

Generatorを使ったExponential backoffライブラリ。
async/awaitと組み合わせて非同期処理のリトライをfor...ofで記述できる。


sghall/react-vertex: React Vertex | Hooks-based WebGL library for React

github.com/sghall/react-vertex

WebGL React library

HooksベースなWebGLを扱うReactコンポーネント


Rocketseat/unform: ReactJS form library to create uncontrolled form structures with nested fields, validations and much more!

github.com/Rocketseat/unform

React library

Uncontrolledなフォームを扱うReactコンポーネント。
バリデーション、構造的なデータ、リセットなどの機能を提供している


vitalets/await-timeout: A Promise-based API for setTimeout / clearTimeout

github.com/vitalets/await-timeout

Promises JavaScript library

PromiseベースのsetTimeoutclearTimeoutのラッパーライブラリ。
既存のPromiseオブジェクトてもタイムアウトを設定できる


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