2017-08-17 48 views
-2

我想创建一个组件来生成传递给它的任意数量的按钮。 现在,问题是如何将有关按钮的数据从模板传递到组件,以便在单击相应的按钮时调用指定的动作。如何在emberjs中为模态框创建组件?

+0

传递性能和行动组成部分。 https://guides.emberjs.com/v2.14.0/components/passing-properties-to-a-component/示例代码将有助于回答 – kumkanillam

+0

是的,但如何在组件中使用{yield}而不使用{yield}。如果我发送一个按钮名称和动作,它必须生成一个,如果两个然后两个,依此类推。 –

+0

'每个'助手都会迭代并创建按钮组件 – kumkanillam

回答

0

您可以将按钮作为数组传递。这里是一个如何渲染它们的例子。在组件模板:

{{#each buttons as |button|}} 
    <button type="button" 
      class="{{button.className}} button" 
       onclick={{action button.action}}> 
     {{button.text}} 
    </button> 
{{/each}} 

然后,在某个模板,你想用你的组件:

{{your-component buttons=(array (className='green' text='Save' action=(action (mut variable) 'value')))}} 

array帮手是ember-composable-helper