画面を表示するにあたり、表示時(created())でAPIを呼び出し、データを取得した結果、値を表示する処理を作っていますが、
API呼び出し(今はテスト的にファイル)はうまくいっていますが、画面が再描画されない様子です。
環境:vue2.6.11
コード
javascript
1<template> 2<div> 3 <div class='chart' v-for="(task, i) in tasks"> 4 {{task}} <!-- テスト表示 --> 5 <div> 6</div> 7</template> 8 9<script> 10import axios from 'axios' 11 12export default { 13 data() { 14 return { 15 tasks: [], 16 } 17 }, 18 created() { 19 this.loadTasks() 20 }, 21 methods: { 22 async loadTasks() { 23 var resp = await axios.get('./task.json') 24 for(var i in resp.data) { 25 this.$set(this.tasks, i, resp.data[i]) 26 } 27 this.tasks.splice(resp.data.length) 28 console.log(this.tasks) // ここのは狙いのデータが表示される 29 }, 30 }, 31} 32</script>
何かアドバイスいただけますと幸いです。
====
追記
task.jsonは以下のような構造です
[ [ {"task": 11}, {"task": 12} ], [ {"task": 21} ], [ {"task": 31} ] ]
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/08 11:17
2020/03/08 11:33
2020/03/08 11:35
2020/03/08 11:40
2020/03/08 11:55
2020/03/08 12:18
2020/03/08 12:49
2020/03/18 07:12