EmberJS - Attacchi
L'associazione è una potente funzionalità di Ember.js che aiuta a creare un collegamento tra due proprietà e se una delle proprietà viene modificata, l'altra viene aggiornata automaticamente. Puoi anche associare lo stesso oggetto o oggetti diversi.
Sintassi
ClassName1 = Ember.Object.create ({
//code here
});
ClassName2 = Ember.Object.extend ({
//code here
});
ClassName3 = ClassName2.create ({
//code here
});
La sintassi descrive l'associazione di due proprietà ClassName1 e ClassName2 . Se ClassName2 viene aggiornato, verrà riflesso in ClassName1 .
Esempio
L'esempio seguente crea un collegamento tra due proprietà e aggiorna una proprietà quando un'altra proprietà viene modificata:
import Ember from 'ember';
export default function() {
var CarOne = Ember.Object.create ({
//primary value
TotalPrice: 860600
});
var Car = Ember.Object.extend ({
//creates property which is an alias for another property
TotalPrice: Ember.computed.alias('CarOne.TotalPrice')
});
var CarTwo = Car.create ({
CarOne: CarOne
});
document.write('Value of car before updating: ' + CarTwo.get('TotalPrice'));
//sets the car price
CarTwo.set('TotalPrice', 930000);
//above car price effects the CarOne
document.write('<br>Value of car after updating: ' + CarOne.get('TotalPrice'));
}
Ora apri il file app.js e aggiungi la seguente riga all'inizio del file:
import objectmodelbindings from './objectmodelbindings';
Dove, objectmodelbindings è un nome del file specificato come "objectmodelbindings.js" e creato nella cartella "app".
Quindi chiama gli "objectmodelbindings" ereditati in fondo, prima dell'esportazione. Esegue la funzione objectmodelbindings che viene creata nel file objectmodelbindings.js -
objectmodelbindings();
Produzione
Esegui il server ember e otterrai il seguente output:
L'associazione del modello a oggetti propaga i cambiamenti in una direzione utilizzando l'associazione unidirezionale che è spiegata in questo collegamento .