簡體   English   中英

飛鏢-強迫班級設廠

[英]Dart - force a class to have a factory

我有以下型號:

  • 作者
  • 崗位
class Author implements Model {
  String name;
  String email;

  User({this.name, this.email});

  factory User.fromMap(Map data) {
    return User(
      name: data['name'] ?? 'Jon Doe'
      email: data['email'] ?? 'jon@doe.com';
    )
  }
}

class Post implements Model {
  User author;
  String content;

  User({this.name, this.email});

  factory Post.fromMap(Map data) {
    return Post(
      author: Author.fromMap(data['author']);
      content: data['content'];
    )
  }
}

我的問題是,如何告訴dart將所有模型“強制”為factory Model.fromMap(Map data)

我想要這樣做的原因是我想從API(JSON)獲取這些模型。

您不能對類的靜態形狀提出任何要求,因為使用該信息您將無能為力。 為了調用 Post.fromMap您需要專門引用Post.fromMap ,您不能調用someVariable.fromMap() 關於能夠向靜態接口添加需求的討論已有很多,但並未計划。 https://github.com/dart-lang/language/issues/356

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM