ゆるふわ技術日誌

エンジニア見習いの悪戦苦闘日記

Day23 #100DaysOfCode

Day23

あくまでフロントエンドの勉強をしたいだけだが、簡単ならFirebase使ってみたいと思ったので、調査したりちょっとコード書いたりしてうごかした。

まだFirestoreしか使っていないが、ドキュメント読んでデータの読み書きをするところまで30分かからずにいけたので、今度何か作る時には使ってみる。

f:id:uutarou:20180905230615p:plain

こんな、いかにもしょぼいやつ。(一応Reactでつくった。npmにfirebaseがあるのでそれを入れてimportしたらあとはドキュメントにある通りにやれば使える)

いわゆるNoSQL的なものを触ったことがないので、ドキュメントにどういったデータ構造で実装するべきかが書いているのは親切で嬉しかった。

データ構造の選択  |  Firebase

雑談

自分の甘さを思い知っている。10月の時点から頑張っておくべきだったんだ。

自分のアホさに呆れてものも言えない。

Day22 #100DaysOfCode

Day22

21日目の続きをやっていました。

react-routerのparamsの型を誤ってnumberにしてしまったせいで小一時間はまってしまいました。

Twitterの人たちに助けてもらいました。技術力低くてごめんなさい。

そんなところ。実力のなさがひどい。

github.com

こんなゴミをインターネットにおいてごめんなさい。

雑談

毎日のブログが結構負担になってきてる気がするのでやめようかな。

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をオススメされているので、これを入れてみた。

github.com

なんか詰まったらそのことを書こうと思ったのだが、マジでREADME通りだった。

雑談

明日には完成できるかな〜〜〜〜。

Day20 #100DaysOfCode

すっかりサボっていた #100DaysOfCode またちょくちょくやっていきます。

Day20

お盆の頃に、TypeScript + React + Reduxでの非同期処理は一体どうしたらいいのかということをひたすら検証してた時期がありました。

それから数週間、やっとそれっぽく動くサンプルができつつあります。ながかった。てか時間かけすぎ。

github.com

僕の行き着いた結論としては、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を使う記事を書いた

qiita.com

それはそうと、Ubuntu18.04は最初から絵文字フォントが入っているのですね。素敵。

雑談

最近研究室で使っていたディスプレイが壊れたので新しいのを買ってもらいました。Full HDではありますが、27インチでとても快適。

回線速い、PCのスペックも良い、エアコン使い放題(寒い)これで家から近ければ本当に文句ないですねw

f:id:uutarou:20180831232036j:plain