This example demonstrates adding and removing transitions on-the-fly, and handling subsequent events to update the UI.
The syntax for adding transitions is as follows:
fsm.add('next', 'a', 'b'); // longhand fsm.add('next : a > b'); // shorthand
Currently, only states can be removed:
fsm.remove('a'); // state only
Upon removal of a state, any orphaned actions or states are also removed.
Upon addition or removal of states or actions, a StateEvent
or ActionEvent
is dispatched, the value
property of which can be used to determine the state or action in question.
Use the following event handler ids to listen to these events:
state.add state.remove action.add action.remove
As you can see above, using these event handlers, it's possible to easily update any system on the fly.