こんばんは。いつもお世話になっております。
以下のコードはエラーになります。
vue
1<template> 2 <div id="app"> 3 {{ length }} 4 </div> 5</template> 6 7<script> 8export default { 9 data: () => ({ 10 foo: null 11 }), 12 created: async function () { 13 await sleep(0) 14 this.foo = 'bar' 15 }, 16 computed: { 17 length() { 18 return this.foo.length 19 } 20 } 21} 22 23async function sleep(msec) { 24 return new Promise(resolve => { 25 window.setTimeout(resolve, msec) 26 }) 27} 28</script>
原因はfoo
に値が代入されるタイミングが1テンポ遅いからですが、これをなんとかしてエラーを発生させないようにしたいです。親側でAjaxによる通信を終えてからpropsで渡すという方法もありますが、できればそれはしたくないです。
回答よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/04 07:20