首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未处理的异常:在Firestore上,“Future<void>”类型不是'Future<Photography>‘类型的子类型

未处理的异常:在Firestore上,“Future<void>”类型不是'Future<Photography>‘类型的子类型
EN

Stack Overflow用户
提问于 2019-06-29 04:20:41
回答 1查看 464关注 0票数 0

我需要从消防局数据库中获取所有的数据。我走这边,https://stackoverflow.com/a/55865045/9139407

代码语言:javascript
复制
 Future<Photography> getPhotography() {
  Future<Photography> data =  await db
    .collection('photography')
    .document('0yUc5QBGHNNq6WK9CyyF')
    .setData(jsonDecode(jsonEncode(Photography(
  [AllImages(["list"])],
  "image_url",
  "Shanika",
  "image_url",
  "lovely couple",
  "Bhanuka"
))));

return data;
}

错误信息是:

未处理的异常:类型'Future< void >‘不是'Future< Photography>’的子类型

摄影模型类

代码语言:javascript
复制
import 'package:json_annotation/json_annotation.dart';
part 'Model.g.dart';

@JsonSerializable()
class Photography{
   List<AllImages> all_images;
   String couplePhoto;
   String female;
   String image_url;
   String info;
   String male;

  Photography();

  factory Photography.fromJson(Map<String, dynamic> json) => _$PhotographyFromJson(json);
   Map<String,dynamic> toJson() => _$PhotographyToJson(this);
}

@JsonSerializable()
class AllImages {
  final List<String> imageUrl;

  AllImages(this.imageUrl);

  factory AllImages.fromJson(Map<String, dynamic> json) => _$AllImagesFromJson(json);
  Map<String,dynamic> toJson() => _$AllImagesToJson(this);
}

和下一个问题是,如何在区块汇中添加这些数据?

代码语言:javascript
复制
  Sink<Photography> get inFirestore => _firestoreController.sink;

像这样吗?但错误是,参数类型“未来”不能分配给参数类型“摄影”

代码语言:javascript
复制
final result = db.getPhotography();
inFirestore.add(result);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-29 13:16:39

Document.setData()返回一个Future<void> --这意味着它在将来完成时不会返回任何数据。当然,这对一个策划人来说是合理的。所以你不能把它变成任何东西。目前还不清楚您打算从哪里获得data。从空(?) Photography开始,对其进行编码、解码并存储,然后期望返回一些内容。什么?原始的空物体?(你可以把它还回去--但我不认为这是你想要的。)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56815045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档