картадля ошибок FireStore - PullRequest
       23

картадля ошибок FireStore

0 голосов
/ 24 октября 2018

Попытка создать Карту для элементов из FireStore следующим образом:

class Hero {
  final int id;
  String name;
  bool pickupNeeded;
  String url;
  bool partPickup;


  Hero(this.id, this.name, this.pickupNeeded, this.url, this.partPickup);


  factory Hero.fromJson(Map<String, dynamic> hero) =>
      Hero(_toInt(hero['id']), hero['name'], hero['pickupNeeded'], hero['url'], hero['partPickup']);

  Map toJson() => {'id' : id, 'name': name, 'pickupNeeded' : pickupNeeded, 'url' : url, 'partPickup' : partPickup,};

  int _toInt(id) => id is int ? id : int.parse(id);

Однако _toInt in the hero(_toInt(hero['id'] ... выдает ошибку: «Члены экземпляра не могут быть доступны из конструктора фабрики»

Чего мне не хватает?AngularDart Tour of Heroes похож на их GitHub sample.

hero_service получить Зов Героя:

Future<Hero> get(dynamic id) async {
    try {
      return Hero.fromJson(id);
    } catch (e) {
      throw _handleError(e);
    }
  }

И компонент Героя, который его вызывает:

void onActivate(_, RouterState current) async {
    final id = RoutePaths().getId(current.parameters);
    if (id != null) hero = await (_heroService.get(id));
  }

1 Ответ

0 голосов
/ 25 октября 2018

Сделай _toInt статичным и ты золотой.

static int _toInt(id) => id is int ? id : int.parse(id);
...