JSer.info #323 - jQuery 3.2.0がリリースされました。
$.css
がCSS Custom Propertyをサポート、transformされた要素の.width()
、.height()
の値がおかしい問題を修正、<template>
要素をサポートされています。
また、jQuery.holdReady、jQuery.nodeName、jQuery.isArrayが非推奨となっています。
いくつかのregressionが見つかっていますが、それらは3.2.1で修正される予定です。
- $.holdReady is broken in 3.2.0 · Issue #3573 · jquery/jquery
- Regression: width() & height() return 0 for all inline elements · Issue #3571 · jquery/jquery
- different result of width() and height() since jQuery 3.0 · Issue #3193 · jquery/jquery
追記: jQuery 3.2.1がリリースされました。
テストライブラリであるSinon.JS 2.0.0がリリースされました。
sinon.log
やsinon.logError
は削除、sinon.test
とsinon.testCase
がコアから削除されsinon-testへ分離されています。
また、sinon.calledInOrder
などのInternalなメソッドが非推奨になるなど
ロゴやサイトも新しくなりOpen Collectiveでスポンサーなどの募集も開始されています。
Sinon.jsの競合でもあるテストライブラリのtestdouble.js 2.0がリリースされています。
td.object
ではES2015 Proxyを使って存在しないプロパティなどのアクセスもキャッチ出来るようになり、thenCallback
などで非同期stubのサポート、td.verify
の改善などが行われています。
機能や構文的なSinon.jsとの比較は次の記事にまとめられています。
React+Redux+Express+MongoDBでものすごくシンプルなCRUDアプリをつくる - Qiitaという記事では、React+Reduxを使ったフロント側からExpress+MongoDBを使ったサーバ側までを実装し学ぶ目的のチュートリアルが書かれています。
- サーバーとの通信の方法(より一般的には非同期処理の方法)
- Reduxにおけるフォームの扱い
- ExpressによるAPI
- Node.jsからのMongoDBの操作
- Herokuへのデプロイ
ステップバイステップで丁寧に書かれており、create-react-appを使って短縮できる部分は短縮されていて、フロントとサーバを繋げるハマりどころについての解説などもされています。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Migrating to v2.0
sinonjs.org/releases/v2.0.0/migrating-to-2.0/
Sinon.js 2.0リリース。
sinon.log
やsinon.logError
は削除、sinon.test
とsinon.testCase
がコアから削除され別モジュールへ分離。Internalなメソッドが非推奨になるなど
jQuery 3.2.0 Is Out! | Official jQuery Blog
blog.jquery.com/2017/03/16/jquery-3-2-0-is-out/
jQuery 3.2.0リリース。
$.css
がCSS Custom Propertyをサポート、transformされた要素の.width()
、.height()
の値がおかしい問題を修正、<template>
要素をサポートなど
Release [email protected]: Publish · ReactTraining/react-router
github.com/ReactTraining/react-router/releases/tag/react-router%404.0.0
React Router 4.0.0リリース。
書き直されたバージョンであり、既存のものとは互換性がないためマイグレーションガイドは用意されていない。
https://github.com/ReactTraining/react-router/tree/v4.0.0-beta.8#why-a-major-version-bump
Migration guide v3 -> v4 or changelog? · Issue #4738 · ReactTraining/react-router
Release v0.42.0 · facebook/flow
github.com/facebook/flow/releases/tag/v0.42.0
Flow 0.42.0リリース。
Object type spread
type TypeB = { ...TypeA }
の追加。flow ide
コマンドの追加など
ESLint v3.18.0 released - ESLint - Pluggable JavaScript linter
eslint.org/blog/2017/03/eslint-v3.18.0-released
ESLint 3.18.0リリース。
esqueryベースのASTセレクタに対応しルール内でセレクタを指定できるようになるなど
- estools/esquery: ECMAScript AST query library.
- Selectors - ESLint - Pluggable JavaScript linter
- ESLint v3.18.0 - Qiita
アーティクル
Testing Service Workers – Dev Channel – Medium
medium.com/dev-channel/testing-service-workers-318d7b016b19
ServiceWorkerのスクリプトに対するユニットテストについて。
Tests in SW、イベントのエミュレート、Push Eventのテストについてなど
ES6 Proxy をつかって堅牢なオブジェクトをつくるTips
aloerina01.github.io/javascript/2017/03/14/1.html
ES2015 Proxyを使ったImmutableやSingletonなどを例にした、オブジェクトの拡張方法について。
ProxyのtrapやReflect APIについて
EnzymeでReactコンポーネントのテストを書こう - DMM.comラボエンジニアブログ
labotech.dmm.com/entry/2017/03/07/180449
Enzymeを使ったReactコンポーネントのテスト方法について
Background Tabs in Chrome 57 | Web | Google Developers
developers.google.com/web/updates/2017/03/background_tabs
Chromeのバックグラウンドタブにおける制限について。
Chrome 57からは、timerやrequestAnimationFrameに加えて、budget-basedの制限が加わる。
バックグラウンドにいるかはPage visibility APIで判定できる。 テスト時などは
--disable-background-timer-throttling
のフラグで無効化できる。
AlminでFluxアーキテクチャをやってみる | Web Scratch
efcl.info/2017/03/17/almin-introduction/
Alminを使ってカウンターアプリを書きながら、どのようにFlux的な一方通行のデータフローを行うかについての記事。
開発用のロガーやブラウザ拡張との連携について
Preact internals #1: the easy parts – Medium
medium.com/@asolove/preact-internals-1-the-easy-parts-3a081fa36205
Preactの内部実装についての連載記事
Progressive Web App Libraries in Production – Dev Channel – Medium
medium.com/dev-channel/progressive-web-app-libraries-in-production-b52cad37d34
ServiceWorkerを使ったキャッシュ周りなどを導入するツールであるsw-precache、 sw-toolbox、offline-analyticsの紹介記事
React+Redux+Express+MongoDBでものすごくシンプルなCRUDアプリをつくる - Qiita
qiita.com/m_yama6/items/573247b12ff0bc4e5d3c
create-react-app
を使いReact+Reduxのセットアップを行いフロントを書き、Express+MongoDB+mongooseでバックエンドを書いていくチュートリアル記事。 フロントエンドとバックエンドの接続部分も丁寧にかかれている。
Test Double | Our Thinking | testdouble.js 2.0
blog.testdouble.com/posts/2017-03-13-testdouble-2.0.html
モック化ライブラリであるtestdouble.js 2.0リリース。
td.object
ではES2015 Proxyを使い存在しないプロパティなどのアクセスもキャッチ出来るようになるなど、非同期stubのサポート、td.verify
の改善など
スライド、動画関係
Internels Vue.js - 算出プロパティはどうやって動いているか
kitak.github.io/slides/170316-vue-meetup/#
Vue.jsのcomputed propertyの変更検知の仕組みについてのスライド
React Conf 2017 - YouTube
www.youtube.com/playlist?list=PLb0IAmt7-GS3fZ46IGFirdqKTIxlws7e0
React Conf 2017の動画が公開された
サイト、サービス、ドキュメント
VulcanJS: The full-stack React+GraphQL framework
React+GraphQLなフルスタックフレームワーク。
元々React+MeteorのTelscopeだったもの。
rstacruz/webpack-tricks: Tips and tricks in using Webpack
github.com/rstacruz/webpack-tricks
webpackを使ったファイルサイズの削減やビルドの設定、開発向け/本番向けの設定などのTipsをまとめたドキュメント
ソフトウェア、ツール、ライブラリ関係
thejameskyle/react-loadable: A higher order component for loading components with promises.
github.com/thejameskyle/react-loadable
初期表示までのローディングを扱う高階関数のReactコンポーネント。 Promiseが解決されるまでのローディングやエラー表示を行う
smelukov/webpack-runtime-analyzer: Webpack 1.x/2.x plugin for analyzing internal processes, state and structure of bundles.
github.com/smelukov/webpack-runtime-analyzer
webpackでビルドしたファイルのstateや構造をビジュアライズするwebpack plugin。
モジュール、依存関係グラフ、ファイルサイズなど
FranckFreiburger/module-invalidate: Invalidate node.js modules loaded through require()
github.com/FranckFreiburger/module-invalidate
Node.jsの
require
で読み込んだキャッシュを無効化したり、モジュール側で無効化することを宣言できるモジュール
書籍関係
SVG Animations - O'Reilly Media
shop.oreilly.com/product/0636920045335.do
SVGアニメーションについての書籍
徹底マスター JavaScriptの教科書 プログラミングの教養から、言語仕様、開発技法までが正しく身につく | 磯 博 | インターネット・Web開発 | Kindleストア | Amazon
www.amazon.co.jp/dp/B06XNQCW7B
JavaScriptの文法や言語機能などについての書籍。
ES2015に対応している内容