2017-01-26 19 views
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>

回答

相關問題