dictionary - Map getter 没有为 Map 定义
问题描述
我是 Dart 的新手,我想映射一个对象列表以仅获取属性firstName
,但我收到了该错误:
Error: The getter 'firstName' isn't defined for the class 'Map<String, String>'.
- 'Map' is from 'dart:core'.
void main() {
var employes = [
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
];
var mapFirstName = employes.map((detail) { return {"firstName": detail.firstName}});
print(mapFirstName);
}
我该如何解决?
解决方案
在 Dart 中,您必须使用括号表示法而不是点表示法来访问映射中键的值。
您的代码应如下所示:
var mapFirstName = employes.map((detail) => {"firstName": detail["firstName"]});
推荐阅读
- javascript - 为什么在 vue.config.js 中使用 vue `pages` 参数,localhost 会停止运行?
- python - 如何使用特定组的 DataFrameGroupBy 对象?
- python - 如何使用 X11 Forwarding 将远程 Unix 机器生成的 pyplot 图显示到本地 Windows 计算机?
- javascript - 将类函数公开给使用 JavaScript 中的字符串创建的函数?
- pine-script - 重复的数字和字母集代替枢轴 HL 值
- java - 使用并发时超出时间限制
- python - 如何使用星体包将日落和日出数据的结果转换为数据框?
- python - 在训练测试拆分后使用 LabelEncoder 在分类变量中编码看不见/新的标签?
- python - 数据框不按日期排序
- c# - Autofac 在 MediatR 处理程序完成工作之前处理我的 DbContext