如何在Dart中处理含嵌套Map的List并映射至Model类
如何将含嵌套Map的JSON列表转换为Dart Model类?
我正尝试从JSONPlaceholder API获取数据,想在Dart中将其映射为Model类。试过YouTube教程和自动生成的Model,都没解决问题。获取到的数据是包含嵌套Map的List,示例如下:
var myMap = [ { "name": "Ravindu", "age": 20, "scl": "smc", "address": { "city": "Kegalle", "country": "sri lanka" } }, { "name": "Ravindu1", "age": 20, "scl": "smc1", "address": { "city": "Kegalle1", "country": "sri lanka1" } } ];
我想把这类数据映射到Model类,同时想知道怎么访问嵌套Map里的元素。试过myMap[0]["address"],但它只返回索引0处的整个地址Map。
我实际用的API地址是:final String url = "https://jsonplaceholder.typicode.com/users"
在DartPad测试时出现错误:
Uncaught Error: TypeError: Instance of 'JsLinkedHashMap<String, String>': type 'JsLinkedHashMap<String, String>' is not a subtype of type 'List'
测试代码如下:
void main() { var myMap = [ { "name": "Ravindu", "age": 20, "scl": "smc", "address": { "city": "Kegalle", "country": "sri lanka" } }, { "name": "Ravindu1", "age": 20, "scl": "smc1", "address": { "city": "Kegalle1", "country": "sri lanka1" } } ]; print(myMap[0]); var addressList = myMap[0]["address"]["city"]; print(addressList); (addressList as List).forEach((i){ print(i["country"]); }); }
请问如何将此类JSON数据转换为Dart Model类?
内容的提问来源于stack exchange,提问作者xmr6204
相关产品推荐
相关产品推荐

