盡管我將map轉換為List
引數型別'List<Set<Card>> '不能'分配給引數型別'List<Widget>' 。 dartargument_type_not_assignable
請你告訴我哪里出了問題?
class MyHomePage extends StatelessWidget {
MyHomePage({Key? key, required String title}) : super(key: 關鍵)。
final List<Transaction> transactions = [
交易(
id: 'sh1'。
日期。DateTime.now(),
標題。'學校'。
值。1554.5'sc5',
日期。DateTime.now()。
標題。'Sucar',
值。16.5@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
標題。Text("title")。
),
body: 列(
crossAxisAlignment: CrossAxisAlignment.stretch,
兒童。[
const Card(
color: Color.fromRGBO(200, 165, 245, 1.0) 。
孩子。Text('[CHART]')。
),
列(
兒童。
/////// ERROR
transactions.map( (e) => { return Card(child: Text(e.title),); }. ).toList()。
),
],
),
);
}
}
uj5u.com熱心網友回復:
這一點:
transactions.map( (e) => { return Card(child: Text(e.title),); } ).toList()。
應該是
transactions.map((e) => Card(child: Text(e.title)).toList()。
或者如果你喜歡長的形式:
transactions.map((e) { return Card(child: Text(e.title),); } ).toList()。
但是你不能混合它們,否則編譯器會把多余的{}解釋為意圖讓你的專案回傳一個Set<>,而不是一個單一的專案。
uj5u.com熱心網友回復:
不要同時使用=>和return。=>是return的簡寫,它不需要大括號{}來定義方法的邊界。
transactions.map((e) => Card(child: Text(e.title)).toList()。
這是首選方式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/326619.html
標籤:
