- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
Sthg 让我发疯,我尝试在卡片中显示 json 产品,但它不起作用。到目前为止,这是我尝试过的:
产品类别:
class Product {
final String id;
Product({this.id});
factory Product.fromJson(Map<String, dynamic> json) {
return new Product(
id: json['id'] as String
);
}
}
JSON:
Future loadProducts() async {
final response = await http.get('https://api.stripe.com/v1/products');
return response.body;
}
json 具有以下结构(数据包含产品列表):
小部件:
Widget get _homeView {
return new Column(
children: <Widget>[
new FutureBuilder(
future: loadProducts(),
builder: (context, snapshot) {
List<Product> products = parseJson(snapshot.data.toString());
return !products.isEmpty
? new ProductsList(product: products)
: new CircularProgressIndicator();
}
),
...
]
);
}
List<Product> parseJson(String response) {
final parsed = json.decode(response.toString()).cast<Map<String, dynamic>>();
return parsed.map<Product>((json) => new Product.fromJson(json)).toList();
}
ProductsList 类:
class ProductsList extends StatelessWidget {
final List<Product> product;
ProductsList({Key key, this.product}) : super(key: key);
@override
Widget build(BuildContext context) {
return new ListView.builder(
itemCount: product == null ? 0 : product.length,
itemBuilder: (BuildContext context, int index) {
return new Card(
child: new Container(
children: <Widget>[
new Text(product[index].id),
],
)
);
}
);
}
}
错误:
Class '_InternalLinkedHashMap' has no instance method 'cast' with matching arguments.
编辑 1:
最佳答案
这是我解析 json 对象列表的常用方法(有点简单但有效):
List<Product> parseJson(String response) {
List<Product> products = new List<Product>();
List jsonParsed = json.decode(response.toString());
for (int i = 0; i < jsonParsed.length; i++) {
products.add(new Product.fromJson(jsonParsed[i]));
}
return products;
}
关于dart - Flutter:_InternalLinkedHashMap 没有实例 > 方法 'cast',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53378341/
在创建两个类来创建这个 json 结构之后: { "data": [ { "staff_id": "1111", "class_id": "222222",
有时,在 Dart 中遍历复杂的 json 文件时,如果我们能告诉我们的编辑器预期的结构是什么,以便我们可以充分利用编辑器的智能代码完成功能,那就太好了。 作为一个玩具示例,请考虑脚本 writer.
在存储到本地数据库之前将json字符串转换为对象的正确方法是什么? 这是i['created_by_user']的输出: {id: 3, name: A} 我试图将其转换为CreatedBy对象 C
我已将Cloud Firestore设置为数据库,并正在使用 map 检索文档,这是快照: 当我尝试使用get()检索文档时,我得到了DocumentSnapshot,然后将其转换为Map,其中包括许
Sthg 让我发疯,我尝试在卡片中显示 json 产品,但它不起作用。到目前为止,这是我尝试过的: 产品类别: class Product { final String id; Produ
我正在调用一个 post API,我必须在其中发送 FormData 但在收到响应后,当我尝试解析该响应时,我遇到了异常。 static Future versionApiRequest(String
Dart / Flutter的新功能。我创建了一个gridview,然后在网格中点击一个项目后,我想将JSON数据传递到下一页。但是,我收到一个错误,我认为这与无法正确进行类型转换有关。我希望下一页显
尝试解析JSON并将其显示在文本中而不是listview时出现错误。 以下是我的JSON结构。 { "status": "success", "data": { "id
我对Flutter很陌生,想呈现一个ListView。但是我得到一个错误。 我有3个模型类: 主题,主题和内容。 这是模型文件topic.dart: import './content.dart';
抱歉,我现在正在编程中,但是我正在学习中,请帮助我。我被困在这个问题上。这是我的第一个应用程序,在likke帮助下需要完成所有工作。 我收到此错误:类型'_InternalLinkedHashMap'
我正在尝试使用网络调用实现一个简单的新闻提要应用程序,其中屏幕将在 ListView 中显示最新的故事。 使用当前代码,我从 API 获得了响应(因为我在日志中看到了整个响应主体),但似乎无法在 UI
这是我的问题。在屏幕中,我使用的是 Navigator.pushnamed()...带有参数以将信息发送到具有详细 View 的屏幕。它工作正常!这是代码:Navigator.pushNamed(co
嗨,我是 Flutter 的新手,遇到了问题。 我想将从 Firestore 获取的数据添加到 List 类型的变量中,但出现错误。我花了几个小时来解决这个问题,但效果不佳。 有人知道我是如何得到这个
我收到以下错误: The following _TypeError was thrown building FutureBuilder(dirty, state: _FutureBuilderStat
这是我的错误行: 这是我的代码: 最佳答案 final jobs= json.decode(response.body)['name_database_table']; 关于mobile - NoSu
点击登录按钮后出现错误->未处理的异常:类型“_InternalLinkedHashMap”不是类型“String”的子类型 } 捕获(e){扔 e;//这里}请帮助我,我不明白如何解决 未处理的异常
我正在尝试解析 json,将其打印到控制台,然后放入 ListView.builder 并收到此错误:type '_InternalLinkedHashMap' is not a subtype of
背景 我正在开发一个可帮助小学老师的应用程序。 该应用程序允许用户从字母表中选择字母,当他们继续进入下一个屏幕时,他们选择的字母应显示为可翻转卡片。一侧有字母,另一侧有图像。 这些卡应占据整个屏幕,并
这是回应 { "overview": "A ticking-time-bomb insomniac and a slippery soap salesman channel primal male a
我有一个JSON如下 { "status": 1, "msg": "Success", "data": { "lastIndex": 50, "
我是一名优秀的程序员,十分优秀!