采用以下有限状态机:
const machine = Machine({
initial: "foo",
states: {
foo: {
on: {
BAZ: "baz",
QUX: "qux",
},
},
bar: {
on: {
BAZ: "baz",
QUX: "qux",
},
},
baz: {
on: {
FOO: "foo",
BAR: "bar",
},
},
qux: {
on: {
FOO: "foo",
BAR: "bar",
},
},
},
});
请注意,有两个重复的状态转换集:
on: {
FOO: "foo",
bar: "bar",
}
on: {
BAZ: "baz",
QUX: "qux",
}
除了将状态转换定义为Machine定义之外的优秀JavaScript对象之外,还有一种特殊的方法吗?
答案 0 :(得分:1)
除了将状态转换定义为Machine定义之外的所有JavaScript对象
您回答了自己的问题!您已经知道如何对这些数据进行重复数据删除,因此将它们定义为外部对象并在计算机内对其进行引用。不需要特殊的API即可做到。