nuxt.js + firebaseでアカウント認証のウェブアプリを製作中です。
ログインしているユーザーのuidを見てfirestoreの該当するデータを取得し、表示したいと考えています。
今回は主にjavascriptの「Promise」の戻り値についての初歩的な認識が調べてもわからず質問してみました。
環境はnuxt.jsです。
下記はindex.vue内のスクリプトの記述です。
export default { computed: { received: function() { var getUser = firebase.auth().onAuthStateChanged(user => { let getDoc = firebase.firestore().collection('users').doc(user.uid).get() .then(doc => { add = doc.data().add; return add // この値が欲しい }) .catch(err => { return err }); }); return add; // ここで取得しないと反映されない } } }
<template>には<p>{{received}}</p>としており、色々試してみたのですがgetUserを取るとそれ以下の関数のコードを引っ張ってきたりとなかなか意図したデータが取得できません。
Promiseと、関数がネスト化した時にどうやって値を返すのか今まで意識せずにやってきたのでこの辺の考え方がよくわからず、なのですが、ご教示いただければと思います。
根本的に違うかもしれませんので諸々意見お聞かせいただければと思います。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。