質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Vuex

Vuexは、Vue.js アプリケーションのための状態管理ライブラリです。アプリケーション内で使用するコンポーネントのための集中データストアを提供。コンポーネント同士でデータをやり取りし、処理のフローを一貫させたり、データの見通しを良くすることができます。

Q&A

解決済

1回答

4791閲覧

ページのリロード時にVuexの値を変数に入れる方法

Khy

総合スコア118

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Vuex

Vuexは、Vue.js アプリケーションのための状態管理ライブラリです。アプリケーション内で使用するコンポーネントのための集中データストアを提供。コンポーネント同士でデータをやり取りし、処理のフローを一貫させたり、データの見通しを良くすることができます。

0グッド

0クリップ

投稿2020/04/19 13:15

Nuxt.jsでプロフィールの編集画面を作ろうとしております。

ユーザー情報はFirebaseから取得し、Vuexにuserというstate名で保存してあります。

値の変更後に編集を取り消す機能も付けたかったので、当初、profile.vuemountedで以下のようにvuexのuserデータをclonedDataという変数に代入してその値を変更するようにしておりました。

<template> <div> <v-text-field v-model="clonedData.age" /> <v-btn @click="save">保存</v-btn> <v-btn @click="cancel">キャンセル</v-btn> </div> </template> <script> export default { data() { return { clonedData: null } }, computed: { ...mapGetters(['user']) }, mounted() { this.clonedData = Object.assign({}, JSON.parse(JSON.stringify(this.user))) }, methods: { save() { // 変更したデータの保存処理 }, cancel() { // 変更を取り消す処理 } } } <script>

上記のコードで編集の取り消しは問題なく動作させることができたのですが、このprofile.vueのページをリロードすると、clonedDataが取得されていないことに気付きました。
vuex-persistedstateを入れているので、データはStoreに残っているのですが、描画されません。
上記のような状況の時、リロード時にVuexの値を変数に入れるにはどのようにしたら良いのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

こちらの方法で解決しました
https://teratail.com/questions/254689

投稿2020/04/19 14:34

Khy

総合スコア118

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問