如何理解xState

如何理解xState,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

员工经过长期磨合与沉淀,具备了协作精神,得以通过团队的力量开发出优质的产品。创新互联坚持“专注、创新、易用”的产品理念,因为“专注所以专业、创新互联网站所以易用所以简单”。公司专注于为企业提供网站设计制作、网站制作、微信公众号开发、电商网站开发,成都小程序开发,软件按需网站开发等一站式互联网企业服务。

xState

A state machine editot and runtime. Can be used to model simple workflow

简介

xState编辑器是一个允许开发人员创建状态机的编辑器,通过通用直观的解决方案。

如何理解xState

适用场景

状态机用处极其广泛,适用于订单,用户,任务等等具有确定状态的领域模型

特点

  1. 结合模型和代码

  2. 可以创建仅包含状态和变迁的状态机

  3. 也可以提供状态变迁时的触发器

状态转移触发器

  1. EntryAction

  2. ExitAction

  3. TransitionAction

状态转移校验

TransitionGuard 

如何理解xState

使用范例

模型可以被工具用于在运行时触发状态转移

如何理解xState

如何传递业务属性

有些时候需要传递业务信息给状态机的各个触发器做判断,虽然缺省的Event类里面没有这些属性,但由于Event 是个普通类,用户可以自定义自己的Event子类,在子类里面定义需要的业务属性。允许时可以在各个Action里面cast 标准的Event 为你自定义的Event类即可获得额外的属性。

如何恢复状态机之前的状态

有时需要保存状态机的当前状态,并在之后恢复。可以通过调用StateMachine的restore(String id),传入需要恢复的状态id实现。

如何重置状态机

在状态机没有处于End状态的情况下,可以通过调用reset()方法重置状态机的状态。

集成说明

参考样例POM

Depenency


	com.xrosstools
	xstate
	${latest}

Demo project

Demo

实际案例

简单状态机

如何理解xState

复杂状态机

如何理解xState

关于如何理解xState问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


文章标题:如何理解xState
URL网址:http://hbruida.cn/article/ghcsjg.html