鍍金池/ 問答/Python  HTML/ 如何在單文件組件初始化時獲取main.js中異步請求的值

如何在單文件組件初始化時獲取main.js中異步請求的值

在static目錄下,有一個配置文件,在打包之后可以動態(tài)讀取。于是我在main.js中這樣寫:

// 獲取配置文件信息
axios.get('static/serverconfig.json').then((result) => {
  Vue.prototype.mainHostUrl = result.data.mainHostUrl
}).catch((error) => {
  console.log(error)
})

mainHostUrl掛載在原型上后,在vue單文件組件中就可以直接訪問(不需要掛載在data上),美滋滋~

然而事與愿違,在created鉤子函數(shù)中,獲取不到該值

    console.log('url', this.mainHostUrl) // undefined

我本意是在頁面初始化時獲取mainHostUrl,然后去請求數(shù)據(jù)。

猜測跟鉤子函數(shù),axios異步有關(guān),但是由于涉及到2個文件,不能用promise,請大神們指點一二!

回答
編輯回答
不討囍

你把初始化vue的代碼放在這個回調(diào)里面應(yīng)該就可以了啊。

2017年11月8日 11:16
編輯回答
怣痛

寫個自調(diào)用函數(shù),用await,把異步變同步

2018年1月16日 19:05