Minori-Akizuki / ddntj

playing TRPG online
GNU General Public License v3.0
25 stars 8 forks source link

機能追加 : キャラステータス管理 #2

Closed Minori-Akizuki closed 4 years ago

Minori-Akizuki commented 7 years ago

キャラの一覧からステータス管理したい

Shunshun94 commented 7 years ago

キャラクターステータス管理用アプリ を書いてみました。 こいつで楽にやれないかな?って思ってます

c6h4clch3 commented 7 years ago

@Shunshun94 ソースコード拝見しました。 データ構造自体をとふのものとそろえるという方針、いいと思います。

クライアント側のストアオブジェクトでしたらVuexという Vueのコンポーネントを横断して一定の手続きの上でデータの読み書きを行うための Vue公式のストアライブラリがあるので、 まなてぃをVuexから利用できるラッパーを書けばいい感じかもですね。 サーバ側のストアにするにはNodeプロセスが落ちたら失われてしまうので ファイル出力かDB保存かでデータを永続化するのが今後の課題でしょうか?

Shunshun94 commented 7 years ago

クライアントに組み込んでしまう、という発想はありませんでした。 その方が管理するものは減って楽な気はしますね……

サーバサイドとしてはファイル出力や DB 保存は早めにやりたいところです。 (使うミドルウェアが増えないファイル出力が最初にくると思っています)

c6h4clch3 commented 7 years ago

環境変数の有無でミドルウェアの有無を切り替える形 (MongoDBの接続URLなど)でもいいかもですね>サーバサイド

・フロントサイド: Vuexについて VuexはVueアプリケーション内の全てのコンポーネント内で 共有できるオブジェクトストアです。 (その分保存の仕方などは制約がつきます)

Vueは親から子への単方向データバインディングなので 子の変更を親に伝えるのは骨が折れますが共有ストアを利用することで 複雑なデータフローがスッキリできます。 各種サブウィンドウ・マップ・サイドバーなどで キャラクターやチャット設定など使い回す部分が多いので この仕組みは使って損はないと思います。