4

Ember.js Handlebars テンプレート内のオブジェクトの配列をループして、holder.jsを使用してそれぞれのプレースホルダー イメージを表示しようとしています。

#each ループ コンテキストの外では、holder.js は期待どおりにプレースホルダー イメージをレンダリングします。

<img data-src="holder.js/100x100" src='' alt='person image' />

{{#each person in controller}}
  person.name
{{/each}}

#eachループ内では、プレースホルダー イメージは表示されません。

{{#each person in controller}}
  <img data-src="holder.js/100x100" src='' alt='person image' />
  person.name
{{/each}}

#each ループがどのように機能するかについて私が理解していないことがあるかもしれませんが、プレースホルダー画像をここに表示するためのトリックはありますか?

4

2 に答える 2

3

問題は、すべてのデータをループするHolder.run()前に呼び出されるEmberため、後で自分で再度呼び出す必要があります。

追加してみることができます

Em.run.schedule('afterRender', null, function () { Holder.run(); })

また

Em.run.next(function () { Holder.run(); })

あなたのルートのrenderTemplateフックに。(コントローラーにすべてのデータがロードされたことを確認してから追加することをお勧めします。)

于 2013-05-28T13:18:06.137 に答える