Propiedades calculadas y datos agregados

La propiedad calculada accede a todos los elementos de una matriz para determinar su valor. Agrega fácilmente los elementos y los elimina de la matriz. La clave dependiente contiene una clave especial @each que actualiza las vinculaciones y el observador de la propiedad calculada actual.

Ejemplo

El siguiente ejemplo muestra el uso de la propiedad calculada y los datos agregados utilizando la clave @each de Ember:

import Ember from 'ember';

export default function() {
   var Person = Ember.Object.extend ({
      
      //todos is an array which holds the boolean values
      todos: [
         Ember.Object.create ({
            isDone: true
         }),
         Ember.Object.create ({
            isDone: false
         }),
         Ember.Object.create ({
            isDone: true
         })
      ],
      
      //dispaly the remaining values of todos
      remaining: Ember.computed('[email protected]', function() {
         var todos = this.get('todos');
         
         //return the todos array
         return todos.filterBy('isDone', false).get('length');
      }),
   });
   
   var car_obj = Person.create();
   document.write("The remaining number of cars in todo list: " + car_obj.get('remaining'));
}

Ahora abra el archivo app.js y agregue la siguiente línea en la parte superior del archivo:

import computedaggregate from './computedaggregate';

Donde, computedaggregate es un nombre del archivo especificado como "computedaggregate.js" y creado en la carpeta "app". Ahora, llame al "computedaggregate" heredado en la parte inferior, antes de la exportación. Ejecuta la función computedaggregate que se crea en el archivo computedaggregate.js -

computedaggregate();

Salida

Ejecute el servidor ember y recibirá el siguiente resultado: