2015-04-07 88 views
0

对于如何在我的特定情况下使用这个助手,我还是有点模糊。我从一个对象数组中拉出一个随机对象并在按钮单击时显示它们。每个对象都有3个道具:单词,语言,反式。当对象被渲染我真的很喜欢它显示如下埃姆贝尔手柄帮手换行符?


的langauge
翻译

我有当它呈现,但都在一行它为中心。这里是我的助手代码:

Ember.Handlebars.helper('randomize', function(myArray, options) { 
    var random = myArray[Math.floor(Math.random() * myArray.length)]; 
    return random.word + random.language + random.trans; 
}); 

所以我愚蠢的问题是,如何我有一个换行符,当它呈现?

+0

这不应该在助手,你应该把它放在你的控制器。 – albertjan

+0

你可以放在字符\ r \ n某处吗? – iwayneo

回答

2

我认为一个更好的工具将是一个组件。组件自动附带一个模板,用于完成您想要执行的操作,然后您的显示逻辑与业务逻辑分开。

App.RandomWordComponent = Ember.Component.extend({ 
    word: null, 
    language: null, 
    translation: null, 
    createRandomWord: function() { 
    this.set('word', Math.random()); 
    this.set('language', Math.random()); 
    this.set('translation', Math.random()); 
    }.on('didInsertElement') 
}); 

和模板:

<p style="font-weight: bold"> 
    Word: {{word}} 
</p> 
<p> 
    language: {{language}} 
</p> 
<p> 
    translation: {{translation}} 
</p> 

然后用它在你的其他模板:

{{random-word}} 

我简化了一点,所以你需要把它调整到您的需要,但希望这可以让你指出正确的方向。 complete example here