Dart模型在混合许多数据类型时抛出错误



我制作了这个简单的模型来使用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"的子类型

我甚至没有在我的应用程序中使用"int"这个"id",所以这与它的使用无关,问题在于这个型号的

您可以只显示json的示例吗,这样我就可以告诉您您的模型应该是什么,或者哪里出了问题。所以,也许您的问题没有那么大,所需的id是整数,并且您正在传递String。

book['id']是字符串吗?试试看:

// _id = book['id'];
_id = int.parse(book['id']);

相关内容

最新更新