emberjs - 组件的块参数
emberjs - block params for component
如果我这样声明一个组件:
<p>
{{#x-autosuggest source=model destination=tags minChars=0}}
<img src="img/small_avatar.png" title="{{name}}" class="avatar"/>
{{/x-autosuggest}}
</p>
我希望 name
该字段来自我使用新块参数语法传递的上下文。我尝试了下面的代码示例,但上下文仍然是控制器的上下文,而不是我在组件的 hbs 文件中使用 yield
传递的参数。
<ul class='selections'>
{{#each destination as |selection|}}
<li class="selection">
<a class="as-close" {{action "removeSelection" selection}}>x</a>
{{yield selection}}
{{displayHelper selection searchPath}}
</li>
{{/each}}
</ul>
如何传递 selection
参数以便我可以在原始代码片段中设置 name
属性?
我用这个 jsbin
重新创建了一个基本示例
您需要在使用组件的地方添加 as |name|
以获取产生的值。
<p>
{{#x-autosuggest source=model destination=tags minChars=0 as |name|}}
<img src="img/small_avatar.png" title="{{name}}" class="avatar"/>
{{/x-autosuggest}}
</p>
如果我这样声明一个组件:
<p>
{{#x-autosuggest source=model destination=tags minChars=0}}
<img src="img/small_avatar.png" title="{{name}}" class="avatar"/>
{{/x-autosuggest}}
</p>
我希望 name
该字段来自我使用新块参数语法传递的上下文。我尝试了下面的代码示例,但上下文仍然是控制器的上下文,而不是我在组件的 hbs 文件中使用 yield
传递的参数。
<ul class='selections'>
{{#each destination as |selection|}}
<li class="selection">
<a class="as-close" {{action "removeSelection" selection}}>x</a>
{{yield selection}}
{{displayHelper selection searchPath}}
</li>
{{/each}}
</ul>
如何传递 selection
参数以便我可以在原始代码片段中设置 name
属性?
我用这个 jsbin
重新创建了一个基本示例您需要在使用组件的地方添加 as |name|
以获取产生的值。
<p>
{{#x-autosuggest source=model destination=tags minChars=0 as |name|}}
<img src="img/small_avatar.png" title="{{name}}" class="avatar"/>
{{/x-autosuggest}}
</p>