Существует процесс сбора данных пользователя следующим образом и сохранения данных поста пользователя в объекте.
Также пытается сохранить первый комментарий поста в объекте поста.
getLatestCommentData(dataList) {
if (dataList.length === 0) {
return {}
} else {
return {
body: dataList[0].body,
created_at: dataList[0].created_at
}
}
},
async fetchUserInfo({ commit, dispatch }, { userId }) {
const user = await this.$axios.$get(`/users/${userId}`)
await Promise.all([
this.$axios.$get(`users/${userId}/posts`).then(async posts => {
user.posts = await Promise.all(
posts.map(async post => ({
...post,
latestComment: await dispatch(
'getLatestCommentData',
this.$axios.$get(`/posts/${post.id}/comment`)
)
}))
)
})
]).then(() => {
commit('setUserInfo', user)
})
},
Однако в случае вышеприведенного кода содержимое аргумента dataList
для getLatestCommentData
выглядит следующим образом, и оно не работает должным образом.
{ dispatch: [Function],
commit: [Function],
getters: { mainUser: [Getter] },
state: { mainUser: {} },
rootGetters: { .... },
rootState:{ .... } },
Как я могу передать данные ответа axios на dataList
?