私はプランナー上に、必要なデータをロードするのに少し時間がかかるコンポーネントがいくつかあります。 を使用すると、順番にそれぞれロードされますが、ロードされるごとに毎日プランナーに表示されます。しかし、私はすべてコンポーネントが読み込まれるまで、白い画面が表示されます。私はこれが私のvueバージョンでアップグレードされて以来かもしれないと思います。(私は別のUIフレームワークに移行したので、私は確信が持てません)すべてのコンポーネントが作成されるまで待っているリストのレンダリング - それらを1つずつ表示したい
これはコンポーネントのレンダリングです[]
としての
<div
v-for="(date, index) in plannerDates"
>
<planner-day
:date="date.date"
class="day-container col-xs-12 col-sm-4 col-md-3 col-xl-2-mod"
:key="index"
/>
</div>
plannerDates
開始されますが、2日のフィルタに基づいてロードされます:「)POSSと同じくらい私の例をダウン易しく書き直さまし。要するに、それはplanner-day
コンポーネントの作成イベント内loop - this.plannerDates.push(someMoment)
のようなものだ、私は比較的プロセスにしながら、少し時間がかかる方法のカップルを呼び出す:
created() {
this.loadDay(this.date)
this.dataLoaded = true
console.log('Day loaded: %s', this.date.format('DD/MM/YYYY'))
},
私はおよそに登場するコンソールログを参照してくださいそれぞれの間に2分の1のギャップがありますので、私のコンポーネントも同様に2分の1のギャップでページに表示されることを期待しています。
注:私は、私が見mounted()
にコンソールログを追加する場合、すべての最初に作成その後、私はこれが問題になる期待が、私はVueのは、順番に各部品を実装する方法を得ることができますので、取り付けられましたか?
私はあなたがキーを使うべきだと思う:これで問題が解決し作成した設定方法を念頭に置いて
、。私はキーが読み込まれているデータと新しいデータを簡単に理解するのに役立つと思います。それが問題を解決するかどうかはわかりませんが。 – aks
申し訳ありませんが、私の通常のコードにはキーがありますが、私の例を最小限に抑えて誤って削除しました。 – webnoob
'nextTick()'を使ってみましたか? https://vuejs.org/v2/api/#Vue-nextTick。 – Maurice