(1)投稿日:2018-10-28最終更新:2018-10-28筆者のブログで記事をみるある人が作り始めたSPAを、途中から引き継いだ。要件が曖昧なので、それを身体に馴染ませるのに時間がかかった。何を作ろうとしているのかが身体に入って来ないと、確信を持ってコードを書けないものである。開発の方でも、いろいろと苦戦したが、どうやら山を越して、このプロジェクトを自分のものにできたように思う。そこで、ここ数週間で経験したことを、ポツリ、ポツリ、書いておこうと思う。このSPAは、サーバサイドAPIの実装にLaravelを、クライアントサイドの実装にNuxt.jsを採用している。作り始めた人は、Nuxt.jsに堪能というわけではなく、したがって、ところどころ疑問に感じたところがある。Veuxストアと、Vueステートをどう使い分けるか、ということは、少し考える余地がある。ページ内にダイアログを埋め込んだりする必要からVueステートを使わないというわけにはいかない。アプリケーションとして管理すべき情報は、できるだけVeuxストアに保持するべきだというのが私の考えである。Veuxストアに対するmutationは、ユニットテストしやすい。Vue算出プロパティ->Vuexゲッター->Vuexストアと連鎖するようにしてテンプレートにはVue算出プロパティを埋め込むようにする。関数型っぽい構造になるので、たいへん快適である。今日のJavaScriptは十分に高速なので、下手にVueステートに導出値を持たせるより、算出プロパティで計算させた方がほとんどの場合良い。遅くて困ってから、導出値を持たせる方が良いのである。Qrunch.netサーバー提供フィードバックを送信する。