У меня есть проект vuejs + firebase.
У меня есть три модуля магазина vuex, которые back, common, front
Структура папок моего магазина выглядит следующим образом:
src / store
├───back
│ └───index.js
├───common
│ └───index.js
├───front
│ └───index.js
Без nuxtjs я могу получать уведомления пользователей, подобные этому
fetchUserNotifications({commit, getters}) {
let getUser = store.getters["common/getUser"];
return firebase
.database()
.ref("users/" + getUser.id)
.child("notifications")
.limitToLast(5)
.on("value", snapshot => {
commit("setUserNotifications", snapshot.val());
});
},
Но с nuxt js getUser
возвращает неопределенное значение, я думаю, это потому, что мне нужно получить данные дорендеринг.Я также добавил
setTimeout(() => console.log(store.state.front.user), 5000);
, но каждый раз результат равен нулю.Когда я проверяю Vuejs Developer Tools на Chrome, все выглядит нормально и мои данные там.
Я искал документы и нашел nuxtServerInit()
, но не мог понять, как его использовать.
Честно говоря, я не мог понять nuxtjs, и мне нужна помощь для извлечения данных, как проект не-nuxtjs.