我正在努力迭代這個對象數組。我沒有看到任何控制檯錯誤,也不確定數據爲什麼不顯示。如何在Vue.js中使用v-for循環訪問一個對象數組?
{
"messages":[
{
"id":1,
"sender":"frank",
"message":"Lorem ipsum...",
"time":1398894261,
"status":"read"
},
{
"id":2,
"sender":"mary",
"message":"Lorem ipsum...",
"time":1390824261,
"status":"read"
},
{
"id":3,
"sender":"john",
"message":"Lorem ipsum...",
"time":1308744200,
"status":"unread"
}
]
}
我正在使用http獲取請求,並且數據正在進入,但我無法遍歷它。這裏是我的JS:
new Vue({
el: '#app',
data: '',
ready: function() {
// GET request
this.$http.get('https://www.example.com/file.json', function (data) {
// set data on vm
this.$set('data', data.messages);
}).error(function (data, status, request) {
console.log('http request error')
})
}
})
這是我的HTML:
<div v-if="data">
<li v-for="d in data">{{ d.sender }}</li>
</div>
<p>{{data[0].sender}}</p> <!-- this part works -->
第一。只需將data.messages分配給this.messages,並使用計算屬性從數據中提取消息並在模板中遍歷它,而不是$ set。 – 8bit