stack插件主要用于实现一些特定操作的“撤回”和“前进”操作。tuo-three2系统将要定义一组标准操作,在此,命名这个标准操作为"StandardOperation"。stack插件将会监听 TuoScene, 和每一个根结点对象的StandardOperation事件。根据自己的配置,stack插件能保存这些StandardOperation消息,并按消息中的内容,在监听到"GoBackStandardOperation"或"GoForwardStandardOperation"消息时,执行相应的消息发布。
在此,定义StandardOperation的规范如下:
<Root_or_TuoScene>.dispatchEvent({
type: 'standardOperation',
stackable: bool,
payload: {
backword: {
type: <event_type_to_backword_this_operation>,
payload: {<payload_needed_by_backword_this_operation>}
},
forward: {
type: <event_type_to_forward_this_operation>,
payload: {<payload_needed_by_forward_this_operation>}
}
}
})
其中的stackable用来控制此StandardOperation是否可以放入stack插件。这是为了防止,stack的事件再次触发stack的入栈操作。