在vuex操作块中,我有以下方法,其中我将用户电子邮件和密码发送到后端服务器,并在成功时获取userId和令牌。
async signIn ({ commit }, formData) {
const graphqlQuery = {
query: `
query{
loginData(
email: "${formData.email}",
password: "${formData.password}"
) {userId, token}
}
`
}
const res = await this.$axios.post('http://localhost:8080/graphql', graphqlQuery, {
headers: {
'Content-Type': 'application/json'
}
})
console.log(res.data) //works
console.log(res.data.loginData.token) //doesn't work
commit('loadUserData', true, res.data.loginData.token, res.data.loginData.userId)
return res.status
}
我可以确认我正在使用console.log(res.data)
获取响应数据。我得到的响应数据是:
但是当我console.log(res.data.loginData)
时,我变得不确定。并在console.log(res.data.loginData.token)
和console.log(res.data.loginData.token)
上留空。
如何提取所需数据token
和userId
?
我将webstorm用作IDE,它显示loginData
作为引用我的后端graphql解析器方法的方法。
我的前端是在Nuxt js上制作的,后端是在带有graphql的节点js上制作的。 有谁有想法解决这个问题?