本文整理汇总了TypeScript中dojo-interfaces/bases.Stateful类的典型用法代码示例。如果您正苦于以下问题:TypeScript Stateful类的具体用法?TypeScript Stateful怎么用?TypeScript Stateful使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Stateful类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: completeStatefulState
/**
* Internal function to unobserve the state of a `Stateful`. It emits a `statecomplete` event which can be
* cancelled.
*
* @param stateful The `Stateful` object to unobserve
*/
function completeStatefulState(stateful: Stateful<State>): void {
const observedState = observedStateMap.get(stateful);
if (observedState) {
observedState.handle.destroy();
const statecomplete = createCancelableEvent({
type: 'state:completed',
target: stateful
});
stateful.emit(statecomplete);
if (!statecomplete.defaultPrevented) {
stateful.destroy();
}
}
}
示例2: setStatefulState
/**
* Internal function that actually applies the state to the Stateful's state and
* emits the `statechange` event.
*
* @param stateful The Stateful instance
* @param state The State to be set
*/
function setStatefulState(target: Stateful<State>, state: State): void {
const previousState = stateWeakMap.get(target);
if (!previousState) {
throw new Error('Unable to set destroyed state');
}
const type = 'state:changed';
state = deepAssign(previousState, state);
const eventObject = {
type,
state,
target
};
target.emit(eventObject);
}