Proprietà calcolate e dati aggregati

La proprietà calcolata accede a tutti gli elementi in una matrice per determinarne il valore. Aggiunge facilmente gli elementi e rimuove gli elementi dall'array. La chiave dipendente contiene una chiave speciale @each che aggiorna le associazioni e l'osservatore per la proprietà calcolata corrente.

Esempio

L'esempio seguente mostra l'uso della proprietà calcolata e dei dati aggregati utilizzando la chiave @each di 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'));
}

Ora apri il file app.js e aggiungi la seguente riga all'inizio del file:

import computedaggregate from './computedaggregate';

Dove, computedaggregate è un nome del file specificato come "computedaggregate.js" e creato nella cartella "app". Ora, chiama il "computedaggregate" ereditato in fondo, prima dell'esportazione. Esegue la funzione computedaggregate che viene creata nel file computedaggregate.js -

computedaggregate();

Produzione

Esegui il server ember e riceverai il seguente output: