【发布时间】:2019-11-02 12:39:40
【问题描述】:
我正在使用shared_preferences package 来保存我的对象。当我加载我的应用程序时,我会得到我之前创建的团队。如果我没有得到任何东西(第一次),我会创建 2 个默认团队 这就是我所拥有的:
Future<Null> _getTeams() async {
final prefs = await SharedPreferences.getInstance();
return prefs.get("teams") ??
[
{"name": "Team 2", "avatar": "assets/images/draw1.jpg"},
{"name": "Team 3", "avatar": "assets/images/draw2.jpg"},
];
}
class MyState extends State<TeamsPage> {
final _listKey = GlobalKey<AnimatedListState>();
Future<List<Map>> _teams = _getTeams();
当我的小部件需要动态显示这些团队时,问题就出现了。它们还没有准备好成为Future 变量,所以我收到长度和索引错误:
child: AnimatedList(
key: _listKey,
initialItemCount: _teams.length,
itemBuilder:
(BuildContext context, int index, Animation animation) {
return _buildItem(_teams[index], index, animation);
},
),
index 我得到这个错误:
没有为类“Future>”定义运算符“[]”。尝试 定义运算符'[]'
和length:
没有为类“Future>”定义吸气剂“长度”
【问题讨论】:
标签: flutter flutter-dependencies