0

Railsパーシャルと同様の方法で、繰り返し表示されるものをコンポーネントに抽出しようとしています。

これ欲しい:

{{ activity.each do |activity| }}
    <div class="{{ activity.style_class }}>
       {{ activity.text }}
    </div>
{{ end }}

これになるには:

{{ activity.each do |activity| }}
    <:activity>
{{ end }}

しかし、ビュー コードを移動しようとすると、app/activity/views/main/index.html アクティビティが存在しないというエラーが発生します。

4

1 に答える 1

1

トリックはmodel、コンポーネントを呼び出すときに渡すことです:

// app/main/views/main/index.html

{{ activity.each do |activity| }}
    <:activity model="{{ activity }}">
{{ end }}

次に、コンポーネントで、次のようにそれ自体にスコープを設定します。

// app/activity/views/main/index.html

<div class="{{ style_class }}>
  {{ text }}
</div>
于 2015-06-28T07:34:11.897 に答える