08:57:23 # Life nodejsをcommonjsのモジュールローディングからES modulesに引っ越してみる。 特に大きな違いはない気がするがそのままブラウザでも使えるというのがよい。 scriptタグにtype=moduleを指定しないといけないのが忘れがち。 あとは適当にimport {resizeToMatchDisplay} from './resize.js';とかかいておく。 ロードされる側のモジュールはexport {symbols,..}が必要。 node jsの場合はファイル名の拡張子をmjsにすればよいんだけど、 package.jsonにtype:moduleを指定すればjsのままでも読み込んでくれるみたい。 Nodejs 14以降を使えば標準でサポートしているようだ。
{ "type": "module" }
10:39:12 # Life Chromeの getDisplayMedia の挙動。 どうもWindowであるときとTabであるときで全然挙動がちがうっぽい。 Windowのときには画面の大きさの黒い背景の大きな画像にWindow部分だけが描画されているものが取得できる、Windowのサイズを取得する方法が特にあるようにみえない。crop-and-scaleでサイズを指定しておくとそのサイズに良い感じにリサイズしてくれる。 TabのときにはTabのサイズの画像がもらえる。crop-and-scaleでリサイズはしてくれなくて、サイズをexactで指定するとサポートしていないというエラーをはいてくる。これどっかに説明あるんかな。