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

如何修改AsyncMemoizer的返回类型为Future<List<MyModel>>?

解决AsyncMemoizer返回类型不匹配问题

问题根源在于初始化AsyncMemoizer时未指定泛型类型,默认会使用dynamic,导致runOnce返回Future<dynamic>,和你声明的Future<List<MyModel>>类型不兼容。

修改步骤:

  • 给AsyncMemoizer指定泛型类型List<MyModel>
  • 确保getData()方法确实返回Future<List<MyModel>>(若该方法返回类型错误,仍会导致类型不匹配)

修改后的代码:

final AsyncMemoizer<List<MyModel>> _memoizer = AsyncMemoizer();

Future<List<MyModel>> getSometing() async {
  return _memoizer.runOnce(() async {
    return await getData();
  });
}

这样_memoizer.runOnce会明确返回Future<List<MyModel>>,与方法声明的返回类型一致,类型问题即可解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 16:15:54