如何从给定的数字范围迭代?

Chr*_*ini 2 ember.js ember-cli

在一个余烬模板中.是否可以执行与伪代码类似的操作:

 <ul>
  {{#each [1..100] as |item|}}
    <li>{{#link-to "articles.index" (query-params page=item)}}{{item}}{{/link-to}}</li>
  {{/each}}
 </ul>
Run Code Online (Sandbox Code Playgroud)

这将创建类似于:

 <ul>
  <li><a href="localhost/articles?page=1">1</a></li>
  <li><a href="localhost/articles?page=2">2</a></li>
  <li><a href="localhost/articles?page=3">3</a></li>
  // so forth
 </ul>
Run Code Online (Sandbox Code Playgroud)

Kit*_*nde 5

不是真的,但在HTMLBars中使用子表达式很容易实现.所以如果你像这样创建一个帮助器:

App.RangeHelper = Ember.Helper.helper(function(params) {
  var range = [];
  for(var i=params[0]; i < params[1]; ++i){
    range.push(i);
  }
  return range;
});
Run Code Online (Sandbox Code Playgroud)

你可以做:

{{#each (range 1 100) as |item|}}
  <li>{{#link-to "articles.index" (query-params page=item)}}{{item}}{{/link-to}}</li>
{{/each}}
Run Code Online (Sandbox Code Playgroud)

我正在模仿python范围函数,所以请记住它在我的例子中以99结尾.