Class Evented

public
Defined in: packages/ember-runtime/lib/mixins/evented.js:13
Module: @ember/object

has (name) Boolean public

Module: @ember/object
name
String
The name of the event
returns
Boolean
does the object have a subscription for event

Checks to see if object has any subscriptions for named event.

off (name, target, method) public

Module: @ember/object
name
String
The name of the event
target
Object
The target of the subscription
method
Function
The function of the subscription
returns
this

Cancels subscription for given name, target, and method.

on (name, target, method) public

Module: @ember/object
name
String
The name of the event
target
Object
The "this" binding for the callback
method
Function
The callback to execute
returns
this

Subscribes to a named event with given function.

person.on('didLoad', function() {
  // fired once the person has loaded
});

An optional target can be passed in as the 2nd argument that will be set as the "this" for the callback. This is a good way to give your function access to the object triggering the event. When the target parameter is used the callback becomes the third argument.

one (name, target, method) public

Module: @ember/object
name
String
The name of the event
target
Object
The "this" binding for the callback
method
Function
The callback to execute
returns
this

Subscribes a function to a named event and then cancels the subscription after the first time the event is triggered. It is good to use one when you only care about the first time an event has taken place.

This function takes an optional 2nd argument that will become the "this" value for the callback. If this argument is passed then the 3rd argument becomes the function.

trigger (name, args) public

Module: @ember/object
name
String
The name of the event
args
Object...
Optional arguments to pass on

Triggers a named event for the object. Any additional arguments will be passed as parameters to the functions that are subscribed to the event.

person.on('didEat', function(food) {
  console.log('person ate some ' + food);
});

person.trigger('didEat', 'broccoli');

// outputs: person ate some broccoli

© 2020 Yehuda Katz, Tom Dale and Ember.js contributors
Licensed under the MIT License.
https://api.emberjs.com/ember/2.18/classes/Evented/methods