将 XState 的 Reddit 示例从 Vue 2 升级到 Vue 3 的问题
Issue upgrading XState's Reddit sample from Vue 2 to Vue 3
阅读 XState 文档后,我遵循了官方指南中的 Reddit 示例,此处:
https://xstate.js.org/docs/tutorials/reddit.html
我试图升级到 Vue 3 Chris Hannaby 的示例实现,但我不能。
当我 运行 应用程序时,从列表中选择一个项目后,组件卡在“加载中”,即使在 Vue Dev Tools 中检查 subreddit 解释器的状态,它已正确设置为'loaded' 值。
奇怪的是,如果您选择列表中的另一个项目然后返回到上一个项目,它会正常工作并正常加载列表。
这是 Chris 的 codesandbox,在 Vue 2 中工作:
https://codesandbox.io/s/xstate-vue-reddit-example-with-actors-uvu14
这是我在 Vue 3 中的叉子,:(
https://codesandbox.io/s/xstate-vue-reddit-example-with-actors-forked-1pm0mp
我对 Vue 和 XState 都很陌生,非常感谢任何帮助。
使用这个错误的建议,它看起来与我的非常相似:
https://github.com/statelyai/xstate/issues/3169
我修改了在此处插入对 toRef 的调用的实现
const { state, send } = useActor(toRef(props, "service"))
现在可以使用了:
https://codesandbox.io/s/xstate-vue-3-reddit-example-with-actors-working-g9ywb2
我仍然怀疑为什么。任何解释将不胜感激。
阅读 XState 文档后,我遵循了官方指南中的 Reddit 示例,此处: https://xstate.js.org/docs/tutorials/reddit.html
我试图升级到 Vue 3 Chris Hannaby 的示例实现,但我不能。
当我 运行 应用程序时,从列表中选择一个项目后,组件卡在“加载中”,即使在 Vue Dev Tools 中检查 subreddit 解释器的状态,它已正确设置为'loaded' 值。
奇怪的是,如果您选择列表中的另一个项目然后返回到上一个项目,它会正常工作并正常加载列表。
这是 Chris 的 codesandbox,在 Vue 2 中工作:
https://codesandbox.io/s/xstate-vue-reddit-example-with-actors-uvu14
这是我在 Vue 3 中的叉子,:(
https://codesandbox.io/s/xstate-vue-reddit-example-with-actors-forked-1pm0mp
我对 Vue 和 XState 都很陌生,非常感谢任何帮助。
使用这个错误的建议,它看起来与我的非常相似:
https://github.com/statelyai/xstate/issues/3169
我修改了在此处插入对 toRef 的调用的实现
const { state, send } = useActor(toRef(props, "service"))
现在可以使用了:
https://codesandbox.io/s/xstate-vue-3-reddit-example-with-actors-working-g9ywb2
我仍然怀疑为什么。任何解释将不胜感激。