Day23 #100DaysOfCode
Day23
あくまでフロントエンドの勉強をしたいだけだが、簡単ならFirebase使ってみたいと思ったので、調査したりちょっとコード書いたりしてうごかした。
まだFirestoreしか使っていないが、ドキュメント読んでデータの読み書きをするところまで30分かからずにいけたので、今度何か作る時には使ってみる。
こんな、いかにもしょぼいやつ。(一応Reactでつくった。npmにfirebaseがあるのでそれを入れてimportしたらあとはドキュメントにある通りにやれば使える)
いわゆるNoSQL的なものを触ったことがないので、ドキュメントにどういったデータ構造で実装するべきかが書いているのは親切で嬉しかった。
雑談
自分の甘さを思い知っている。10月の時点から頑張っておくべきだったんだ。
自分のアホさに呆れてものも言えない。
■
今日はダメでしたね。
ちゃんと整えられるように頑張って生きましょう…
Day22 #100DaysOfCode
Day22
21日目の続きをやっていました。
react-routerのparamsの型を誤ってnumberにしてしまったせいで小一時間はまってしまいました。
Twitterの人たちに助けてもらいました。技術力低くてごめんなさい。
コンパイラに正しく型を教えてあげないとせっかくの型システムが台無しなんだということを学びましたね
— ううたろ (@uutarou10) 2018年9月3日
というか実際に使われる型と一致してなくても動いちゃうから型情報渡すときは注意してやらんといけないし、挙動がおかしかったら真っ先にそこを疑うべきだということがわかった
— ううたろ (@uutarou10) 2018年9月3日
そんなところ。実力のなさがひどい。
こんなゴミをインターネットにおいてごめんなさい。
雑談
毎日のブログが結構負担になってきてる気がするのでやめようかな。
■
今日は疲れが溜まっていてどうにも動けずな1日でした。
ほんとうになにもやってねぇ…。
なにもやってないので、おすすめ動画を貼っておきます。←クズ
Day21 #100DaysOfCode
Day21
react-routerを入れた。
reduxが入っているので、react-router-reduxを入れてやるかと思ったら。
This project is no longer maintained. For your Redux <-> Router syncing needs, please see one of these libraries instead: connected-react-router
らしい。と言いつつLast commitが2日前なのだが…?
まぁ、connected-react-routerをオススメされているので、これを入れてみた。
なんか詰まったらそのことを書こうと思ったのだが、マジでREADME通りだった。
雑談
明日には完成できるかな〜〜〜〜。
Day20 #100DaysOfCode
すっかりサボっていた #100DaysOfCode またちょくちょくやっていきます。
Day20
お盆の頃に、TypeScript + React + Reduxでの非同期処理は一体どうしたらいいのかということをひたすら検証してた時期がありました。
それから数週間、やっとそれっぽく動くサンプルができつつあります。ながかった。てか時間かけすぎ。
僕の行き着いた結論としては、typesafe-actions
というサポートライブラリ?を使うことで、なるべく低い労力で、型システムをちゃんと使ってReduxアプリがかけるのではないかと思いました。
非同期処理の部分もredux-observableを使うことでこんなにすっきりと。
const fetchPostsEpic: Epic = action$ => { return action$.pipe( filter(action => action.type === ActionTypes.FETCH_START), mergeMap(() => api.post.getAll()), map(posts => fetchPosts.success(posts)) ); }
RxJS(Reactive X)が敷居が高い感じなので敬遠しがちかなと思うのですが、少なくともPromiseを返す関数叩いて結果をもとにActionをDispatchするくらいの感じなら、決まった形で書けばいいので、そんなに苦しくないと思いました。(もちろん、RxJSを使えるようになった上でredux-observableを使うことで、できるようになることはたくさんあるので、やらなくていいというわけではないのですが…)
QiitaにHyperでEmojiを使う記事を書いた
それはそうと、Ubuntu18.04は最初から絵文字フォントが入っているのですね。素敵。
雑談
最近研究室で使っていたディスプレイが壊れたので新しいのを買ってもらいました。Full HDではありますが、27インチでとても快適。
回線速い、PCのスペックも良い、エアコン使い放題(寒い)これで家から近ければ本当に文句ないですねw