首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
javascript-state-machine
pilihou
创建于2021-06-08
订阅专栏
js有限状态机
等 7 人订阅
共10篇文章
创建于2021-06-08
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
javascript-state-machine文档01:介绍
有限状态机的库 安装 在浏览器中: 通过npm: 通过Node.js: 使用 可以使用以下方法构造状态机: ...它会创建具有当前状态属性的对象: fsm.state ...向不同状态转换的方法: f
javascript-state-machine文档09:状态机可视化为直观图
将状态机可视化为直观图是非常有用的。可以通过开源库GraphViz来实现,我们使用visualize方法将状态机配置转换为GraphViz使用的.dot语言: 生成以下.dot语法: GraphViz
javascript-state-machine文档08:记录历史状态
默认情况下,状态机只跟踪其当前状态。如果希望跟踪状态历史记录,可以使用state-machine-history插件来扩展状态机。 回溯历史记录 你可以使用 historyBack和historyFo
javascript-state-machine文档06:初始化可选项
初始化可选项 显式的指定初始转换动作 默认情况下,如果未指定初始状态,状态机将处于none状态,在构建过程中不会触发任何生命周期事件,你需要提供一个明确的转换动作来退出这个状态 隐式的指定初始化转换动
javascript-state-machine文档03:数据和方法
数据和方法 除了状态和转换动作之外, 状态机还可以包含任意数据和方法: 数据和状态机工厂 如果要从状态机工厂创建多个实例,然后data对象将在它们之间共享。这肯定不是你想要的!若要确保每个实例获得唯一
javascript-state-machine文档07:错误处理
错误处理 无效转换 默认情况下,如果试图触发一个当前状态不允许的转换动作,状态机将抛出异常。如果你更愿意自己处理这个问题,可以自定义一个onInvalidTransition处理方法: 待定转换 默认
javascript-state-machine文档10:状态机工厂
状态机工厂 本文档中的大多数示例构造单个状态机实例,例如: 如果希望使用相同的配置构造多个实例,则应该使用状态机工厂。状态机工厂提供了一个js构造函数(例如:class),它可以多次实例化: 使用工厂
javascript-state-machine文档05:异步转换
异步转换 有时,你需要在状态转换期间执行一些异步代码,并确保在代码完成之前不会进入新的状态。这方面一个很好的例子是:当你离开一个状态并逐渐淡出UI组件时,或者将其从屏幕上滑出,并且在动画完成之前不想转
javascript-state-machine文档04:生命周期
生命周期 为了跟踪或执行当转换动作发生时的行为,有以下五个通用生命周期事件可以观测: onBeforeTransition - 执行任意转换动作前被触发 onLeaveState - 离开任意状态时被
javascript-state-machine文档02:状态和转换动作
状态机是由一组状态(states), 如: solid liquid gas 和一套转换动作(transitions)组成的, 如: melt freeze vaporize condense 一个转