Ceci est une ancienne révision du document !


Model objet

Les objets Javascript ne supportant pas l'observation des changements de leurs propriétés, une application Ember utilisera des objets Ember.Object pour mettre en place le binding des propriétés en lieu et place des objets javascript standards.

De la même façon, Ember étend l'objet Array javascript par la classe Ember.Enumerable.

Création de classes

La création de classe se fait en utilisant la méthode extend sur la classe Ember.Object :

import EmberObject from '@ember/object';

const Person = EmberObject.extend({
  say(thing) {
    alert(thing);
  }
});

Héritage/surdéfinition

import EmberObject from '@ember/object';

const Person = EmberObject.extend({
  say(thing) {
    alert(`${this.get('name')} says: ${thing}`);
  }
});

const Soldier = Person.extend({
  say(thing) {
    // this will call the method in the parent class (Person#say), appending
    // the string ', sir!' to the variable `thing` passed in
    this._super(`${thing}, sir!`);
  }
});

let yehuda = Soldier.create({
  name: 'Yehuda Katz'
});

yehuda.say('Yes'); // alerts "Yehuda Katz says: Yes, sir!"

Initialisation/construction

Quand un objet est instancié, la méthode init() de sa classe est invoquée automatiquement. La méthode init permet d'initialiser chaque instance :

Instanciation

let person = Person.create();
person.say('Hello'); // alerts " says: Hello"

richclient/emberjs/modelobjet.1516462887.txt.gz · Dernière modification: 2018/01/20 16:41 par jcheron
GNU Free Documentation License 1.3
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0