问题标签 [statechart]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2612 浏览

routes - Ember.js 中的状态不使用路由?

我试图了解 Ember.js 中的状态是否仅设计/假定为在路由管理器中定义,以及路由是否是 Ember 不可或缺的。我见过的几乎所有指南似乎都假设您希望状态和路线完全匹配。

我想创建不依赖于路由的状态,而只依赖于应用程序的状态。例如,在电子邮件客户端中,我可能有一个状态“userHasSpecifiedRecipient”。只有当此状态为真时,我才能启用表单的消息框。但显然我不希望网址是:

myEmailClient.com#composingMessage_userHasSpecifiedRecipient_userIs...等等

有这方面的例子吗?

第二个问题:我可以混合与路由耦合的状态和不耦合的状态吗?

最后:我看到一些建议,如果人们想要并发状态之类的东西,建议他们使用 Ember 的sproutcore-statechart插件。这仍然是真的吗?

0 投票
1 回答
184 浏览

uml - 寻找大型业务流程语料库

出于研究目的,我正在寻找大量业务流程示例,最好来自行业或现实来源。流程描述可以是任何格式,包括但不限于:

  • BPEL 或 BPMN
  • UML 活动,状态图序列,包括状态图
  • 古老的数据流图,以及 OPM 和 Odell 表示法等变体

从代码中对流程描述进行逆向工程不是一种选择,我特别需要人工编写的模型。

我知道这是一个乱七八糟的搜索,但还是提前感谢!

0 投票
1 回答
421 浏览

boost - Boost状态图,不同FSM之间的通信

假设我创建了几个从状态图继承的独立 FSM 类。然后,我实例化这些对象,我希望它们能够相互触发事件;例如,第一个 FSM 将进入“ON”状态并在第二个 FSM 中触发一个事件(如 process_event(EvSomething()) )。

最好的方法是什么?

非常感谢,

法布里齐奥

0 投票
1 回答
183 浏览

ember.js - 在多个文件之间拆分 Ember 状态图时出现转换错误

我正在尝试找出如何最好地将 Ember.js 状态图拆分为多个文件。

使用 SproutCore,我们需要使用 SC.State.plugin('statename') 将我们在另一个文件中定义的状态与我们的主状态图相关联。

我在 Ember 中没有看到这样的功能,所以我只是简单地向我的 statemanager 的状态哈希添加了一个新状态。(另见我的jsFiddle

起初这似乎可行——我能够转换到我定义的新状态。然而,我发现我无法使用一个动作从这个状态转换出来

我在本地得到的错误是

我在jsFiddle中遇到的错误是

有谁知道为什么会发生这种情况,以及分解状态图的正确方法是什么?

0 投票
1 回答
172 浏览

ember.js - 状态的 Enter 方法中的 Ember 状态未完全更改,仍处于先前状态

我试图在进入状态时直接调用一个动作。(实际上在我的应用程序中,我试图对我的状态的父状态调用一个操作,但最终结果是相同的。)

在我的应用程序中,我从 StateOne 过渡到 StateTwo。当我进入我的状态 StateTwo 时,我调用 manager.send("myStateTwoAction")。但是,我立即收到错误消息

请注意,这是在我的 StateTwo 输入方法中。

这是我的 jsFiddle:http: //jsfiddle.net/SamFent/YGX2Y/

有谁知道是否有办法从新状态的 enter 方法中调用状态的操作?

0 投票
1 回答
115 浏览

c++ - 我可以在 QP(量子平台)活动对象中等待 Windows 事件(WaitForMultipleObjects)吗?

在我当前的代码中,我使用类似的东西等待某些事件发生

在我收到值得发布的事件时,在单独的线程中并将内容发布到状态机。我将此行为移植到 QP 中,据我所知,每个活动对象都是它自己的线程。因此,我可以在 Active 对象中的无限循环(带有一些终止中断条件)中执行此操作吗?

据我了解,QP 也在后台等待 windows 事件,是否有一个技巧来检索代表我当前活动对象队列的 windows 事件句柄并等待它,以便我的线程(活动对象)阻塞如果其他一些对象发布到我的队列,我的(非 QP)事件和事件被激活?

0 投票
0 回答
395 浏览

c++ - 提升状态图,状态机的单元测试部分

我正在寻找一种方法来执行(出于单元测试目的)仅复杂状态机的一部分。为此,我正在评估 boost::statechart 框架。

我考虑的一种方法是设计一个分层状态机,其中每个状态都定义为嵌套状态机,应该单独测试。

考虑以下代码片段中的 FSM 定义:

是否可以对状态 B 内部定义的逻辑进行单元测试,即 B1 和 B2 内部状态,而不执行甚至编译为状态 A 定义的逻辑,包括其内部 A1 和 A2 状态?

提前致谢, AmirH

0 投票
2 回答
406 浏览

algorithm - Brainfuck解释器的状态图

我写了一个brainfuck ide的alpha版本。我编写了自己的解释器,尽管我的老师在代码中的循环方面提供了很多帮助,因为我很难以“IT 方式”理解它。现在对于我的报告,我需要解释器算法的状态图,他如何处理每个字符。

我想出了下图,唯一缺少的是解释器如何处理循环。我看了老师几乎自己写的代码,但我不明白。我希望你能在这里指出我正确的方向,我不想要一个完整的答案,只是一些旁注在代码中遇到 [ 或 ] 时正在做什么。

在此处输入图像描述

codeZeiger = codePointer(在代码中移动的指针)
memoryZeiger = memoryPointer(在内存堆栈中移动的指针)
memory = 内存堆栈
code = 作为字符串的代码 oject
i = interpre() 方法的计数器(单个字符从字符串中读取,然后通过 switch 语句进行解析,其状态图如下所示)

在此处输入图像描述

0 投票
1 回答
1523 浏览

statechart - 状态图和多个动作

过渡可以有两个或更多动作吗?

例如:

0 投票
0 回答
358 浏览

java - 如何在我的java程序中使用graphviz来绘制状态图

我想使用graphviz在我的java程序中绘制状态图来显示流程。如何在我的 java 程序中使用 Graphviz 程序来绘制状态图。