技術と魚

雑感と備忘録

React.Contextのネストを使ったテクニック

I ❤️ Context. 2020年が終わるまでにプロダクションからReduxのコードを消そうと思い、必死にReact.Contextへ移行していました。 さてContextについて面白いテクニックを見出したので紹介します。Contextはネストできます。これを使うことで、コンポーネント…

componentDidUpdateでContextの変化を見たい

って思うじゃないですか。 github.com 今のところは、公式な手段はなさそうです。こちらのissueにあるようにcontextの値をpropsにぶち込む何かを使ってどうにかする必要があります。 私はたいていcontextのvalueがobjectなので、指定したkeyについてpropsに…

製品のUXはデータベースに支配されている

数年前までSalesforceのUIについて「まじデザインやべえし一体どこが良いねん」とずっと思っていたのですが(とか言うと怒られるか..)、最近は「なんという洗練されたデザインそして体験設計!」と思うようになりました() SoRなシステムにおいて、ユーザの…

エンジニアに向いているって何だろう

子供の頃、「無人島」に対して恐ろしい印象を持っていた。僕がなにか悪さをして、親が怒るついでに、「お前、今度無人島に放ってやるからな」と冗談を言ったりしてきたからだ。 でも、小学校の学年が上がるにつれ、「仮に自分が無人島に1人放たれた場合」と…

ブランチを選択方式で楽に切り替えたい (改)

git

(2020/09/07) fzfを使う楽なやり方を見つけたので更新 レビュー後など、直近や直前に使っていたブランチに戻りたいときはよくある。しかし、ブランチ名を忘れてたりすると「なんだっけ?」と思ってさかのぼったり、tab補完で頑張って見つけようとしたりする…

git管理下でgrepした行の文字列を置換する

もっと良い方法もありそうだけど、awk, while readにパイプしてやるといい感じになる。 # fooのある行をすべて検出してbarに置換 git grep -n "foo" | awk -F ":" '{ print $1" "$2 }' | while read f n; do sed -i '' -e "$n s/foo/bar/g" $f; done 一応何…

getDerivedStateFromPropsでthisがundefinedな件

という問題に直面しました。GitHubのissueをたどってみると、 I understand this might seem a bit overprotective. But I don’t see practical upsides to allowing it. And I see downsides: this will be there, it will just point to a different thing…