<video>に読み込んだ動画の秒数を取得する
<input type="file">で選択したファイルのサイズを取得する - なんでもノート に続きtips2個目。video要素に読み込んだ動画の秒数を取得する方法。durationchangeイベント発生時にdurationから読み取れる。以下、React + TypeScriptのサンプルコード。
import React, { useRef } from "react"; // …(略)… const ref = useRef<HTMLVideoElement>(null); const onChangeVideoDuration = () => { if (ref.current) { const videoDuration = ref.current.duration; console.log(videoDuration); } } // 任意のタイミングでsrcを変更する const onXXX = () => { if (ref.current) { ref.current.src = "sample.mp4"; ref.current.addEventListener("durationchange", onChangeVideoDuration, { once: true }); } } // …(略)… <video ref={ref} />
<input type="file">で選択したファイルのサイズを取得する
最近使ったtipsを1つずつブログにまとめておこうと思う。1つ目はで選択したファイルのサイズを取得する方法。以下、React + TypeScriptでのサンプルコード。
const onChangeFile = (e: React.ChangeEvent<HTMLInputElement>) => { const fileSize = e.target?.files?.[0]?.size; console.log(fileSize + " Bytes"); } // …(中略)… <input type="file" onChange={onChangeFile} />
技術書を電子書籍から紙書籍に戻した
最後にブログを書いてから3ヶ月も経ってしまった。3ヶ月の間に色々あったがおいおい書いていきたい。
タイトル通り、電子書籍で買っていた技術書を紙書籍で買うようにした。6月から紙書籍を買っている。
電子書籍を買い始めたのは2018年の8月ごろなので、かれこれ4年近くなる。電子書籍を買い始めた理由は2つだったと思う。1つ目は紙の本を外に持ち歩くのは重かったから、2つ目は当時ミニマリストに憧れていたからだったとと思う。
そして最近、電子書籍が売ってない紙の本を読む機会があった。久しぶりの紙の本はとても読みやすく、すぐに読み終えてしまった。技術書も紙にすればもっと読めるんじゃないかと思い、紙で買うことにした。
結果、10日間くらいで2冊も読みきれてしまった。ちなみに呼んだのは以下の2冊。
なぜかは言語化できないのだが、紙の書籍の方が電子書籍より読みやすいと感じた。また、物理的に存在することによる読まなくてはというプレッシャーを感じるので自然と手が伸びた。
一方で場所を取る、どこでも読めるわけではないというデメリットがあり、それらの点については電子書籍の方が優っている。
しかし、総合的に見てインプットの質が上がり、量も増えそうなので技術書は紙で買おうと思う。
Docker ComposeでMySQLを動かしてみた
Docker ComposeでMySQLを動かしてみたのでメモ。
- リポジトリ:https://github.com/azujuuuuuun/try-docker-mysql
- image: https://hub.docker.com/_/mysql
- 環境変数は
.env
ファイルで設定している - ボリュームでMySQLのデータと設定ファイルをマウント
- MySQLの設定ファイルにはデフォルトの認証プラグインを設定している
docker-compose up
で空のデータベースが出来上がった
新型コロナウィルスワクチン接種3回目の副反応の記録
2022/03/03(木)に新型コロナウィルスの3回目のワクチン接種を受けてきた。今更ながら記録を残す。
前回の記録
今回の記録
- 2022/03/03 15:00
- ワクチン接種
- ファイザー社のワクチン
- 解熱剤を2錠もらう
- 2022/03/04 08:57
- 36.6℃
- 注射したところに痛い
- 脇の下に筋肉痛のような痛み
- 13:18
- 頭が重い
- 36.7℃
- 15:25
- 37.7℃
- 解熱剤を飲む
- 17:34
- 37.6℃
- 18:00
- 36.9℃
- 18:56
- 37.1℃
- 2022/03/05 8:15
- 37.5℃
- 10:00
- 37.3℃
- 10:59
- 37.1℃
- 16:06
- 37.5℃
- 19:36
- 37.4℃
- 2022/03/06 9:20
- 36.4℃
体温しか記録していなかった...。
最高温度は37.7℃と前回の38.6℃より低かった。接種翌日の夕方には微熱になっていたので次の日にはおさまるだろうとたかを括っていた。
しかし、次の日も1日中37℃台の熱がおさまらなかった。動けないほどではないが、身体に力が入らず、せっかく天気が良い休日だったのにもったいない感じがして辛かった。
前回と違って熱さまシートとポカリの準備を忘れていたのが敗因だったように思う。熱対策には以下を忘れないようにしたい。
- 解熱剤
- 氷枕
- 熱さまシート
- ポカリスエット
- 簡単に食べられる食料
marginとpaddingの使い分け
CSSのmarginとpaddingの使い分けについてふと思ったので書く。
- 対象要素とその兄弟要素との間の余白を確保する場合はmarginを使う
- 対象要素とその子要素との間の余白を確保する場合はpaddingを使う
このシンプルなルールで大抵の場合は使い分けられるのではないかと思う。多分。