小编Adr*_*man的帖子

条件必须具有 bool 静态类型

有什么方法可以在这种情况下使用未来的布尔值,或者有更好的方法吗?

Widget _buildRow(String pair) {
    final Future<bool> alreadySaved = DBHelper.getAllEmployees().then((value) => value.contains(pair));
    print("Already saved $alreadySaved");
    print(pair);
    return FutureBuilder(
        future: DBHelper.getAllEmployees(),
        builder: (context, AsyncSnapshot<List<FavrtTableModel>> snapshot) =>
        snapshot.connectionState == ConnectionState.waiting ? Center(
            child: Icon(Icons.more_horiz),
        ):IconButton(
            icon: new  Icon(
                alreadySaved ? Icons.favorite : Icons.favorite_border,
                color:alreadySaved? Colors.red : Colors.white,
            ),onPressed: (){
                setState(() {
                    if (alreadySaved) {
                        _saved.remove(pair);
                        _deleteEmployee(pair);
                    } else {
                        _saved.add(pair);
                        _insert(pair);
                    }
                });
            },
        ),
    );
}
Run Code Online (Sandbox Code Playgroud)

sqlite dart flutter flutter-futurebuilder

8
推荐指数
1
解决办法
3万
查看次数

标签 统计

dart ×1

flutter ×1

flutter-futurebuilder ×1

sqlite ×1