在颤振中的构造函数列表上使用 .map 方法
Posted
技术标签:
【中文标题】在颤振中的构造函数列表上使用 .map 方法【英文标题】:Using the .map method on a list of constructors in flutter 【发布时间】:2022-01-17 02:15:50 【问题描述】:我有一个带有构造函数的事务类。使用构造函数方法,我创建了一个交易列表,目的是遍历这些交易并将其内容显示在卡片中,但在尝试使用列表中的 .map 方法时出现错误。
我收到的错误消息是 无法将元素类型“List
我在 [transactions.map((transaction) => ).toList()]
上有错误代码如下:
class Hompage extends StatelessWidget
final List<Transaction> transactions = [
Transaction(
id: 't1',
title: 'First Transaction',
amount: 1000,
date: DateTime.now(),
),
Transaction(
id: 't2',
title: 'Second Transaction',
amount: 500,
date: DateTime.now(),
)
];
@override
Widget build(BuildContext context)
return Scaffold(
appBar: AppBar(
title: const Text('Event Planner'),
),
body: Column(
// mainAxisAlignment: MainAxisAlignment.spaceEvenly,
// crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
Container(
width: double.infinity,
child: Card(
color: Colors.blue,
child: Text('CHART'),
),
),
Column(
// children: [
// (transactions as List<Map<dynamic, dynamic>>)
// .map((transaction) => )
// .toList()
// ],
children: [transactions.map((transaction) => ).toList()],
)
],
),
);
【问题讨论】:
【参考方案1】:children: [transactions.map((transaction) => ).toList()]
首先,去掉括号,你现在有一个列表列表:
children: transactions.map((transaction) => ).toList()
好的,更好,但由于 children
需要 Widget
类型元素,您不能只映射到任何内容。
children: transactions.map((transaction) => Text(transaction.title)).toList()
好多了。不过,您可能想找到比简单的Text
更高级的东西。
【讨论】:
非常感谢以上是关于在颤振中的构造函数列表上使用 .map 方法的主要内容,如果未能解决你的问题,请参考以下文章