0

我不确定我是否完全理解这个错误。任何有使用 graphql_flutter 包经验的人请帮忙。对 Flutter 和 graphql 来说是全新的。但到目前为止,我已经弄清楚了后端。

我的突变在 graphiql 中起作用,试图让它在颤动中起作用。这是当我将鼠标悬停在这些红线上时出现的错误。

错误 - 参数类型 'Column Function(MultiSourceResult Function(Map<String, dynamic>, {Object?optimisticResult}), QueryResult)' 不能分配给参数类型 'Widget Function(MultiSourceResult Function(Map<String, dynamic >, {Object?optimisticResult}), QueryResult?)'。(文档)

这是剪辑 - 在此处输入图像描述

class GraphQlMutations {

  String createUser() { return"""
    mutation createUser(\$id: String!, \$name: String!, \$email: String!) {
      createUser(objects: [{ id: $id, name: $name, code: $code }]) {
        returning {
          id
          name
          email
        }
      }
    }
  """;
  } 
}
4

1 回答 1

5

比较错误中的两个声明并查看差异:

Column Function(MultiSourceResult Function(Map<String, dynamic>, {Object? optimisticResult}), QueryResult)
Widget Function(MultiSourceResult Function(Map<String, dynamic>, {Object? optimisticResult}), QueryResult?)

由于Column是 a Widget,唯一真正的区别是 的可空性QueryResult。因此,改变

builder: (RunMutation createUser, QueryResult result)

builder: (RunMutation createUser, QueryResult? result)

并处理结果为空的情况。

于 2021-07-03T04:45:42.010 回答