如何理解xState
如何理解xState,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
员工经过长期磨合与沉淀,具备了协作精神,得以通过团队的力量开发出优质的产品。创新互联坚持“专注、创新、易用”的产品理念,因为“专注所以专业、创新互联网站所以易用所以简单”。公司专注于为企业提供网站设计制作、网站制作、微信公众号开发、电商网站开发,成都小程序开发,软件按需网站开发等一站式互联网企业服务。
xState
A state machine editot and runtime. Can be used to model simple workflow
简介
xState编辑器是一个允许开发人员创建状态机的编辑器,通过通用直观的解决方案。
适用场景
状态机用处极其广泛,适用于订单,用户,任务等等具有确定状态的领域模型
特点
结合模型和代码
可以创建仅包含状态和变迁的状态机
也可以提供状态变迁时的触发器
状态转移触发器
EntryAction
ExitAction
TransitionAction
状态转移校验
TransitionGuard
使用范例
模型可以被工具用于在运行时触发状态转移
如何传递业务属性
有些时候需要传递业务信息给状态机的各个触发器做判断,虽然缺省的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
网页URL:http://scyanting.com/article/ghcsjg.html