1 回答

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊
我相信這個(gè)nuxtServerInit動(dòng)作被恰當(dāng)?shù)卣{(diào)用了。我敢打賭,它message的值始終為未定義,因?yàn)?Axios.get("http://localhost:5000/api/home")返回的 promise 沒(méi)有屬性data。您必須先等待結(jié)果,然后獲取它的數(shù)據(jù)。
// note extra parentheses
const message = await (Axios.get("http://localhost:5000/api/home")).data;
此外,您可能希望將 axios 調(diào)用包裝在 try-catch 中,否則如果調(diào)用失敗,您將獲得帶有堆棧跟蹤的默認(rèn) Nuxt 錯(cuò)誤頁(yè)面。
async nuxtServerInit ({ commit }: any) {
try {
const message = (await Axios.get('http://localhost:5000/api/home')).data;
console.log(message);
commit('setMessage', message); // put name of mutation as parameter + payload
} catch (error) {
// you could redirect to custom error page for instance
console.error(error);
}
}
添加回答
舉報(bào)