0
因此,以下模板立即呈現,並且不會等待API調用。如何在API調用之後呈現數據? (Vue.js)
我發現的解決方案是使用v-if來保持元素不被渲染,直到數據在那裏。
如果我必須用v-if包裝我的元素,這對DRY原理似乎是違反直覺的。
是否有另一種解決此問題的方法?另一種編碼方式?
<template>
<div id="app">
<div v-if="obj">
<h2>{{ obj[0].item }}</h2>
</div>
<div v-if="obj">
<h5>{{ obj[0].id }}</h5>
</div>
</div>
</template>
<script>
export default {
name: 'app',
data() {
return {
obj: []
}
},
mounted: function() {
axios.get(URL)
.then(response =>
this.obj = response
});
}
}
</script>