You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter中使用VelocityX框架时如何向Mutation类传递参数

问题原因

你报错的根本原因是SaveUser类没有定义对应的成员变量存储传入的userData,构造函数也没有完成参数赋值,导致perform方法访问不到该变量。

正确实现方式

你只需要改造Mutation类的定义,新增成员变量接收参数即可,具体修改如下:

class SaveUser extends VxMutation<MyStore> {
  // 声明成员变量存储传入的参数
  final Object userData;
  // 构造函数完成参数赋值
  SaveUser(this.userData);

  @override
  perform() {
    // 直接访问类成员变量即可拿到参数
    print(userData);
    // 还可以通过store关键字直接修改MyStore的状态
    store?.user = userData;
  }
}

参数传递的调用逻辑不需要修改,保持原有写法即可:

SaveUser(userData);
补充说明
  • 如果参数为可选参数,可将成员变量定义为可空类型,同时在构造函数中添加可选标识即可
  • perform方法内部可以通过store关键字直接访问你定义的MyStore实例,直接完成状态更新

内容的提问来源于stack exchange,提问作者sid heart

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 19:18:01