从飞镖中的嵌套地图中获取字符串



我的地图:

{Info: {name: Austin, Username: austinr}}

我正在使用这一行将 myName 变量设置为"奥斯汀">

String myName = map["name"] as String;

但是..此行似乎将字符串"myName"设置为null。 只是在寻找一种从地图中提取我的名字和用户名的方法

谢谢

我能够成功运行以下代码。

var map =  {"Info":{"name": "Austin", "Username": "austinr"}}; 
String myString = map["Info"]["name"] as String;
print(myString);

输出按预期Austin。请尝试此。

此外,如果您想在 Dart 中使用地图,尤其是嵌套键,您也可以使用 gato 包。

基本方式:

var map = {
'Info': {
'name': 'Austin',
'Username': 'austinr',
'address': {'city': 'New York'}
}
};
String city = map['Info']['address']['city'] as String;
print(city);

但是它有点脏,如果您的地图中没有address键,您也会收到错误。

使用加托

import 'package:gato/gato.dart' as gato;
.
.
.
var map = {
'info': {
'name': 'Austin',
'username': 'austinr',
'address': {'city': 'New York'}
}
};
// Get value from a map
print(gato.get<String>(map, 'info.address.city')); // New York
// Set a value to a map
map = gato.set<String>(map, 'info.address.city', 'Other City');
print(gato.get<String>(map, 'info.address.city')); // Other City

完整文档

相关内容

  • 没有找到相关文章