Pau*_*erg 4 javascript state state-management xstate
取以下有限状态机:
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",
},
},
},
});
Run Code Online (Sandbox Code Playgroud)
请注意,有两组重复的状态转换:
on: {
FOO: "foo",
bar: "bar",
}
Run Code Online (Sandbox Code Playgroud)
on: {
BAZ: "baz",
QUX: "qux",
}
Run Code Online (Sandbox Code Playgroud)
除了在 Machine 定义之外将状态转换定义为好的 ol' JavaScript 对象,是否有一种特殊的方法来做到这一点?
除了将状态转换定义为 Machine 定义之外的好 ol' JavaScript 对象
你是在自问自答!您已经知道如何对这些数据进行重复数据删除,因此将它们定义为外部对象并在机器内引用它们。不需要特殊的 API 来执行此操作。