【发布时间】:2017-06-17 14:19:33
【问题描述】:
我在使用 Vue 时遇到了一个奇怪的行为。我进行 ajax 调用,将结果(一些 JSON)存储到名为“modello”的 Vue 数据属性中。
{
"lineaGialla": {
"selected": false,
"descrizione": "Questa è la descrizione della linea gialla",
"servizi": [
{"nomeServizio": "servizio1","descrizione":"descrizione servizio1","selected": false},
{"nomeServizio": "servizio2","descrizione":"descrizione servizio2","selected": false},
{"nomeServizio": "servizio3","descrizione":"descrizione servizio3","selected": false}
]
}
}
在模板中,当我使用{{modello.lineaGialla}} 访问数据属性lineaGialla 时,它可以工作,但是当我尝试访问嵌套属性(例如{{modello.lineaGialla.descrizione}})时,控制台中出现错误:
[Vue 警告]:渲染函数出错:“TypeError: Cannot read property 'descrizione' of undefined”
这里是 ajax 调用。
var getData = function(){
return new Promise(function(resolve, reject){
$.ajax({
type:'get',
url:'https://api.myjson.com/bins/w9xlb',
dataType: 'json',
success: function(response){
resolve(response);
}
});
});
};
这是我的 Vue。
var Metromappa = new Vue({
el: '#metromappa',
data: {
modello:{}
},
methods:{
},
mounted: function(){
var self = this;
getData().then(function(response){
self.modello = response;
}, function(error){
console.log(error);
});
}
})
会是什么?
【问题讨论】:
-
请同时发布渲染部分。
标签: javascript jquery json ajax vuejs2