Javascript Vue叫喊对象未定义,同时它在需要加载它的作用域中
我想做一些类似的事情:Javascript Vue叫喊对象未定义,同时它在需要加载它的作用域中,javascript,vue.js,vuejs2,frontend,Javascript,Vue.js,Vuejs2,Frontend,我想做一些类似的事情: []中的foreach行 解析(行) 返回div,其中填充ID、类名等 显示该报税表 但由于某种原因,我收到了错误 [Vue warn]:呈现错误:“TypeError:this.json[index]未定义” 如果booldataisloaded能够确保它被加载,那怎么可能呢 console.log(index)返回例如0,因此index具有适当的值。是否应该改为this.json.data[index]?这个.json到底是什么?顺便说一句:你不
- []中的foreach行
- 解析(行)
- 返回div,其中填充ID、类名等
- 显示该报税表
console.log(index)返回例如0,因此index具有适当的值。是否应该改为
this.json.data[index]
?这个.json到底是什么?顺便说一句:你不应该把它命名为json,因为它是一个对象,而不是json;json.data
键在json
@str中不存在,我是个白痴,谢谢。请把它写下来作为答案,这样我就接受了。
<div id="app" v-if="dataIsLoaded">
<div v-for="(obj, index) in json.data">
{{ parse(index) }}
</div>
</div>
el: '#app',
data: {
json: null,
dataIsLoaded: false
},
beforeCreate: function () {
fetch("api")
.then(r => r.json())
.then(json => {
this.json = json;
this.dataIsLoaded = true;
});
},
methods:
{
parse: function(index)
{
var type = this.json[index].name;
var body = this.json[index].age;
(...)
return ...
}
}
<div id="app" v-if="dataIsLoaded">
<div v-for="(obj, index) in json.data">
{{ index }}{{ obj }}
</div>
</div>
parse: function(index)
{
console.log(index);
var type = this.json[index].name;
var body = this.json[index].age;
(...)
return ...
}