1
0
mirror of synced 2025-02-03 21:59:24 +03:00

Add a new _type parameter for the first event argument

This will include the event type in the _type property, so it can be
accessed within the event handlers if it's not normally passed in. This
should not conflict with any existing handlers, and this should not be
considered a public property on event arguments.
This commit is contained in:
Kevin Brown 2016-05-14 22:01:42 -04:00
parent acd3306192
commit ad8447cc35

View File

@ -124,9 +124,23 @@ define([
Observable.prototype.trigger = function (event) {
var slice = Array.prototype.slice;
var params = slice.call(arguments, 1);
this.listeners = this.listeners || {};
// Params should always come in as an array
if (params == null) {
params = [];
}
// If there are no arguments to the event, use a temporary object
if (params.length === 0) {
params.push({});
}
// Set the `_type` of the first object to the event
params[0]._type = event;
if (event in this.listeners) {
this.invoke(this.listeners[event], slice.call(arguments, 1));
}