在 xState 中将事件从一台机器发送到另一台机器时传递值

乔什·皮特曼

我有一个调用 todoMachine 的简单 chatMachine。todoMachine 有一个名为“OPENED_TASK_LIST_CREATOR”的事件,我想从 chatMachine 调用它。我设法弄清楚了这一点。

export const chatMachine = Machine({
  id: 'chat',
  initial: 'idle',
  context: { message: '' },
  states: {
    idle: {
      invoke: {
        id: 'todo',
        src: todoMachine
      },
      on: {
        COMMENT_SUBMITTED: {
          actions: 'addComment'
        },
        COMMENT_STARRED: {
          actions: [
            (ctx, e) => console.log('e.payload', e.payload),
            send('OPENED_TASK_LIST_CREATOR', {
              to: 'todo'
            })
          ]
        }
      }
    }
  }
});

我遇到的问题是我想与 'OPENED_TASK_LIST_CREATOR' 事件一起发送一个值。即我想打开的列表ID。我已经设法(ctx, e) => console.log('e.payload', e.payload),COMMENT_STARRED.

有没有办法传递e.payload给,send('OPENED_TASK_LIST_CREATOR', { to: 'todo' })以便我可以在 todoMachine 中使用该值?

乔什·皮特曼
COMMENT_STARRED: {
          actions: [
            (ctx, e) => console.log('e.payload', e.payload),
            send(
              (ctx, e) => ({
                type: 'OPENED_TASK_LIST_CREATOR',
                payload: e.payload
              }),
              {
                to: 'todo'
              }
            )
          ]
        }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

一台Linux机器上的分段错误,但使用C ++代码不在另一台机器上

从另一台机器访问时,kubectl代理未经授权

如何将Docker卷从一台机器复制到另一台机器?

ESRI层显示在一台机器上,但不在另一台机器上

属性在一台机器上工作正常,但在另一台机器上却报错

一台机器如何ping另一台机器,但是反向ping不起作用

如何将端口从一台机器转发到另一台机器?

通过命令行将测试消息从一台linux机器发送到另一台linux机器

存储过程在一台机器上成功但在另一台机器上失败?

如何在一台机器上编译幻象,然后在另一台机器上“移植”?

我可以将我的所有Keypass详细信息从一台机器转移到另一台机器吗?

从另一台机器导入MDF

如何从一台机器到另一台韦诺之战进行保存和升级?

当我知道另一台机器的ipv4时,确定另一台机器的ipv6地址

在一台机器上创建扩展上下文时,AIR App崩溃,但在另一台机器上运行正常

来自另一台机器的ssh命令

在一台机器上构建内核,在另一台机器上安装

如果我将/ var从一台机器移到另一台机器,会出什么问题?

将以太网帧发送到本地网络中另一台机器的正确方法是什么?

无法将局域网中的一台机器的远程git repo推送到另一台机器

两台机器之间的SSH隧道只能SSH到第三台机器,而不能直接到另一台机器

从另一台机器的另一个网页获取html

如何将网站从一台机器上的 IIS 7.5 迁移到另一台机器上的 IIS 8.5?

如何从一台机器到另一台机器执行批量插入到 SQLServer 中?

将可启动 HD 从一台机器切换到另一台机器时,Ruby 无法启动

不能从一台机器 SSH 到另一台机器

kafka 消息从一台机器发送到另一台机器

将文件从一台机器连续传输到另一台机器

在 ssh 进入另一台机器时将代码推送到 github