Add the ability to fire signals on your objects. Signals are events, but hard coded into the object
and don't rely on strings like other events and eventables
- Source:
Requires
- module:base
- module:signals
- module:base/logger
Classes
Type Definitions
-
SignalOptions
-
- Source:
Properties:
Name Type Argument Description memorize
boolean <optional>
If Signal should keep record of previously dispatched parameters and automatically execute listener. Defaults to
false
params
array <optional>
Default parameters passed to listener during
Signal.raise
/Signal.fire
/Signal.trigger
and SignalBinding.execute. (curried parameters). Defaults tonull
context
object <optional>
When provided the signal will be raised in the context of this object. Defaults to
this
- the signal hostExample
signals:{ opened: null, twisted: { memorize:true }, applied: { memorize: false, params:[one, two] } } // Setting the context initially can be a hassle, so this also supports a function that returns a hash signals: function(){ return { opened: null, twisted: { memorize:true }, applied: { memorize: false, params:[one, two] }, reversed: {context: someOtherRuntimeObject} }; }