【学習記録】アプリ開発用メモ

個人でアプリを開発中ですがアプリケーション自体の概要がまだ自分の中でまとまってないところがあるので、考えを整理するために以下に箇条書きで書きます。
自分用メモです。

作るアプリの概要

良い景色の画像を投稿して共有できるwebサービス
インスタグラムを景色の画像に特化したような形。

機能について

画像を見る機能として、投稿順に表示、カテゴリー別に表示、場所別に表示などに分けたい。
カテゴリーはDBにカテゴリーテーブルを作成して、そのテーブルに空、海、森などの識別用の値を持たせるようにする。

カテゴリー別に表示するページではVuexのgettersでDBからカテゴリーの値を取得して画面でプルダウンリストにして選べるようにする。(初期表示時のデフォルトのカテゴリーはどうするか、という問題も出てきそうだがそれは後から考える)

投稿順もカテゴリー別も場所別も画像を表示する処理は同じ感じになるはずなので、同じコンポーネントで画像表示のコードは書いて、パラメータをそれぞれ別で渡せるようにコンポーネントを設計するかも。
難しそうだったら変更あるかも。フロントエンドの設計はまだまだ手を動かしながらじゃないと見えてこないものが多い。

ユーザー情報の持たせ方

ログイン時にVuexでログインしたユーザーのIDや名前をstateに持たせるようにして、どのコンポーネントからでも取得できるようにする。
ログアウト時はmutationsでstateの値を消去するようにする。

ユーザー情報はブラウザのウインドウが閉じられるまで持つものとする。

ログイン、ログアウト、エラー発生時などは画面にメッセージが出るようにしたいので(2~3秒で消えるイメージ)、そのためのコンポーネント作成する。