Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
  <script src="http://code.jquery.com/jquery-2.0.2.js"></script>
  <script src="http://builds.emberjs.com/handlebars-1.0.0.js"></script>
  <script src="http://builds.emberjs.com/ember-latest.js"></script>
</head>
<body>
  <script type="text/x-handlebars" data-template-name="application">
    <h1>Enumerable Aggregation</h1>
    {{outlet}}
  </script>
  <script type="text/x-handlebars" data-template-name="index">
    <h2>List values and sum with reduce():</h2>
    <ul>
      {{#each}}
        <li>{{name}}: {{value}}</li>
      {{/each}}
      <li><strong>Total: {{total}}</strong></li>
    </ul>
  </script>
</body>
</html>
  
 
App = Ember.Application.create({});
App.IndexRoute = Ember.Route.extend({
  model: function(){
    return [
      {name: 'Item-1', value: 3000},
      {name: 'Item-2', value: 4000},
      {name: 'Item-3', value: 3000}
    ];
  }
});
App.IndexController = Ember.ArrayController.extend({
  total: function () {
    return this.get('model').reduce(function (previousValue, item, index, enumerable) {
      return previousValue + item.value;
    }, 0);
  }.property('model.@each')
});
Output

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
vine77pro
0viewers