我有一个按钮,点击它时会在我的Ember网站中加载一个新路径并返回一个对象数组。我想要做的是设置它,以便单击此按钮导致该模块中呈现的数组中的随机对象。这样,用户可以在每次点击时获得不同的结果。我不知道如何告诉它选择随机索引并在我的车把模板中渲染它。任何帮助,将不胜感激。我对Ember很新。
这是我正在加载的路线(但没有显示内容):
App.GenerateRoute = Ember.Route.extend({
model: function(){
return App.GENERATE;
}
});
App.GENERATE = [
{
id: 1,
word: //word here,
language: //language here',
trans: //translation here'
},
{
id: 2,
word: //word here,
language: //language here',
trans: //translation here'
},
{
id: 3,
word: //word here,
language: //language here',
trans: //translation here'
}
];
答案 0 :(得分:2)
您可以使用把手来实现这一目标。 将模型传递给车把功能,然后使用一点javascript魔法,从数组中选择一个随机对象,然后渲染。
Ember.Handlebars.helper('randomize', function(myArray, options) {
return myArray[Math.floor(Math.random() * myArray.length)].id;
});
你以这种方式调用辅助方法 -
{{ randomize model}}
每次刷新或点击route