javascript - 从一种特定状态转换到另一种特定状态时执行操作?

标签 javascript fsm machina.js

有没有办法在 Machina.js 中的特定状态之间转换时执行操作?

例如,假设我有状态“A、B、C”。

我想写一个像这样的函数:

when("A", "C", function(){ console.log("Caught transition from A to C! Yay!"); }

这与 Akka's FSM 的精神相同。执行。这可能吗?

谢谢!

最佳答案

想通了。只需要注意 transition 事件即可。请参阅API doc here .

var fsm = new machina.Fsm({     
            initialState: 'A',      
            states: {
                "A":    {},
                "B" :   {},
                "C" :   {}
            }
        });


fsm.on('transition', function(transition){      
            console.log("[" + transition.fromState + "] -(" + transition.action  + ")-> [" + transition.toState + "]");
        });

关于javascript - 从一种特定状态转换到另一种特定状态时执行操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27130073/

相关文章:

javascript - 在 JavaScript 中通过 ADODB 从 Access DB 构建 HTML 表

javascript - 防止父页面向下滚动到 iframe

scala - Akka FSM actor 和循环路由

vhdl - 在VHDL中实现FSM

javascript - 如何将 machina.js 包含到 Node.js 应用程序中

使用 Chutzpah 在 Visual Studio 中针对 html 进行 Javascript 单元测试

javascript - 为什么 JavaScript 这样做?

c++ - 如何让 Ragel 执行不同的解析操作

javascript - 在 Machina.js 中传递变量