Модель дротика выдает ошибку при смешивании многих типов данных - PullRequest
0 голосов
/ 23 февраля 2020

Я сделал эту простую модель для работы с API

class BooksModel {
  List<_Book> _books = [];
  BooksModel.fromJson(Map<dynamic, dynamic> parsedJson) {
    List<_Book> temp = [];
    for (int i = 0; i < parsedJson['books'].length; i++) {
      _Book book = _Book(parsedJson['books'][i]);
      temp.add(book);
    }
    _books = temp;
  }
  List<_Book> get books => _books;
}

class _Book {
    int _id;
    String _name;
  _Book(book) {
      _id = book['id'];
      _name = book['name'];
  }
  int get id => _id;
  int get name => _name;
}

Проблема в том, что мне нужно превратить все свойства класса _Book в «String», если я сделал только одно «int», как указано в приведенном выше примере он выдает эту ошибку.

тип 'String' не является подтипом типа 'int'

Я даже не использую этот идентификатор 'is' int 'в моем приложении, так что дело не в его использовании, проблема в этой модели

Ответы [ 2 ]

1 голос
/ 23 февраля 2020

book['id'] строка? Попробуйте:

// _id = book['id'];
   _id = int.parse(book['id']);
1 голос
/ 23 февраля 2020

Можете ли вы просто показать пример вашего json, чтобы я мог сказать вам, какой должна быть ваша модель или где она работает неправильно. Так что, возможно, ваша проблема не так велика, требуется идентификатор целого числа, и вы передаете строку.

...