javascript - 多個components如何共用一個ajax回傳的數據
取得城市元件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <code class = "javascript" >city: {
template: '#city_template' ,
data: function () {
return {
cityData: cityData,
selectedOptions:[24,81],
list:[],
}
},
mounted: function () {
this.getCity()
},
methods: {
getCity: function () {
var self = this
$.ajax({
url: 'test.json' ,
success: function (res) {
self. $set (self. $data , 'cityData' , res)
}
})
}
}
},</code>
|
一個頁面可能有多個這樣的元件,這樣的話就請求了多次的ajax,實際上數據都是一樣的,有沒有一種方法實現只請求一次異步數據,然後多個這樣的組件用同一份數據?嘗試了在外部定義ajax,然後賦值給cityData,這樣不能直接更新資料