如何理解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

<dependency>
	<groupId>com.xrosstools</groupId>
	<artifactId>xstate</artifactId>
	<version>${latest}</version>
</dependency>

Demo project

Demo

实际案例

简单状态机

如何理解xState

复杂状态机

如何理解xState

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

分享文章:如何理解xState
网页链接:https://www.cdcxhl.com/article26/ghcsjg.html

成都网站建设公司_创新互联,为您提供定制网站微信小程序企业网站制作域名注册网页设计公司网站设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设公司