Panda Noir

JavaScript の限界を究めるブログでした。最近はいろんな分野を幅広めに書いてます。

2021-04-01から1ヶ月間の記事一覧

E2Eテストに対して思うところ

E2Eテストを本格的にやったことがないのでしてみたいのだが、そもそもいくつか疑問があるのでここでぶちまけておく。 この記事ではwebサイトのE2Eテストを想定しています。他のケースはわかりません 結論 ユーザーの挙動をシミュレートするのは、コストが大…

React v17 からイベントリスナーの張り方変わるけど、breaking changes は抑え気味だよ

touchmove について調べてて気になったので。 React v16 まで React v16 までは、React コンポーネントに張られたイベントリスナーは ドキュメントのルート要素にすべて集約して貼られていました。そのため、React v16 までは、onTouchStart や onTouchMove …

Timers Promises API が最高

名前から既にワクワクするこのAPIは、なんとPromiseを返すsetTimeout、setInterval関数を提供しています!最高です… というわけで今回はそれの紹介です。 基本的な使い方 await setTimeout(1000) ←これができるんです!素晴らしくないですか?? top-level a…

Vite所感

ここ最近 Vite で軽くアプリ作ってたので感想。 Vite とは? 4行で書くと webアプリ開発に特化したビルドツール バンドラではない(バンドル"も"できる) 超高速 dev server & HMR もちろんプロダクションビルドもできる こんな感じ。ビルドツールなので、webp…

【Docker】 fallback 機能付きで静的コンテンツを手軽に配信する

goStatic がオススメ goStaticの特徴はこちらです。 設定ファイル不要 Go言語で書かれている 軽量コンテナ たとえば、以下のコマンド一発で fallback 機能を使いつつ静的コンテンツを配信できます。 docker run -d -p 80:8043 -v $PWD/dist:/srv/http pierre…

git branch を fzf で簡単に選択する in zsh

setopt no_flow_control __fbr() { local item git branch | fzf +s +m -e --ansi --reverse --height 40% | sed -e 's/^ *//' -e 's/^\* //' | while read item; do echo -n "${(q)item} " done local ret=$? echo return $ret } fzf-branch-widget() { LBU…

eslint-plugin-import を使ってディレクトリ単位でアクセス制限を敷く

TypeScript を使っていて、「この関数、他のディレクトリからはアクセスして欲しくないんだけどテストのために export しなきゃ行けないな…」みたいなケースありませんか?実は、ESLint でうまく設定してやると解決できます!今回はその方法を紹介します。 お…