store.stateの読み込みは遅延する - Nuxt.js
概要
Nuxt.jsでvuex storeでデータのCRUDを行ってる状況を想定する。
例
すでにstate.userには他のページか親コンポーネントでの操作(dispatch, commit)で、undefinedではない何らかのObjectが入っている前提とします。
ダメなコード
このコードは動いたり動かなかったりします。(stateの読み込み速度によって結果が変わってしまう)
$store.getters を使っても、同様の症状になると思います。
<template> <v-container> <p>{{user}}</p> </v-container> <template> <script> export default { beforeCreated() { this.user = this.$store.state.user; }, data(){ return { user: Object } } </script>
→ Error! user is undefined
ちゃんと動くコード
stateのLoad状況によって、表示を切り替え、undefinedエラーを防ぎます。
<template> <v-container> <p>{{user}}</p> </v-container> <template> <script> export default { computed: { user() { const user = this.$store.state.user if (!!user) { return user; } else { return {}; } } } </script>
ミニマリストをやめた理由
昨年から今年夏にかけて、「ミニマリストになる」と意を決して、いろいろなものを処分してきた。
これは、単にものを減らして、管理コストを下げる、物のミニマリズムだけでなく、家事の自動化をして日々のルーティンから家事の時間とストレスを減らす、生活のミニマリズムも同時に行った。
部屋はきれいになったし、時間に余裕が生まれた。なんでも、物事・時間に捉われないのは楽なことだ。
余計なことに気を使わなくて済む。もう余計なことに労力と時間は割きたくない。
しかし、これが超効率指向に転じてしまったのだった。
ミニマリズムをやる意味は、いろんな物事のコストを減らしてやる意味のないことをやめて、空いた場所や時間を使って有意義なことをする、これだと思う。
これが行きすぎて、無意味なことが一切受け付けられない・できない、体質になってしまった。
これでは、クリエイティビティが下がり、フットワークも重くなり、ただの引きこもりが誕生するだけである。
そもそも何のために効率を追い求めたのか、忘れかけていた。
時には無意味に感じたことにも興味をもち、ミニマリズムをしたことで生まれた余裕を使って、新しいことに挑戦したいと思う次第である。
2020年の目標達成状況
2020年の目標の達成状況
# 生活
## 英語力(特にSpeaking)の向上
- 共同研究者との会話を躊躇しない
→週1時間以上は英語で研究の議論を行っている。3月までしか居ないらしいので、その後どうするかなぁ。
## ワーキングメモリを鍛える
- Dual N Back Testをやる
- 記憶が大事なボドゲをする
→チェスを始めた
## 10kg増量して健康体重へ
- リングフィットを継続
- 飯を抜かない
→リングフィットは継続できておらず。飯は必ず大盛りを頼むようにしている。
## 日々の充実感を高める
- 部屋にいい匂いを漂わせる
- 暖かいお茶を飲む
- やったことを記録する
→前の2つはやってない。やったことの記録はFANBOXに記録している。
# 個人開発プロジェクト
- ブランディングとターゲティングを明確にして価値を確実に届ける
- フォロワをふやす
→開発を継続すると共に、このプロジェクトの開発を通してえた知識をブログにまとめる方向で調整を始めた。フォロワはまだ増やす段階にない。
# 研究
- 常にやるべきことを見失わないようにする
→詳細は書けないが、次のステップに進む準備が進行中。
# 飽き防止
- 次にハマれそうなことを常に探る
→本屋での乱読を実施した。