Flutter 颤振:将布尔值更改为true onPressed
我对颤振还不熟悉,不明白为什么我的布尔变量clickedLike没有变为true 我在我的列之外声明它,在StatefulWidget类中初始值为falseFlutter 颤振:将布尔值更改为true onPressed,flutter,dart,boolean,Flutter,Dart,Boolean,我对颤振还不熟悉,不明白为什么我的布尔变量clickedLike没有变为true 我在我的列之外声明它,在StatefulWidget类中初始值为false IconButton( onPressed: () async { setState(() { likeColor = Colors.blue; i
IconButton(
onPressed: () async {
setState(() {
likeColor = Colors.blue;
if (clickedLike == false) {
numLikes++;
FirebaseFirestore.instance
.collection('board')
.doc(docID)
.update({'likes': numLikes});
clickedLike = true;
} else {}
});
},
icon: Icon(Icons.thumb_up, color: likeColor)
//color: Colors.blue,
),
我省略了其余的小部件,因为它们是不相关的。任何帮助都将不胜感激。谢谢
if (!clickedLike) {
numLikes++;
FirebaseFirestore.instance
.collection('board')
.doc(docID)
.update({'likes': numLikes});
clickedLike = !clickedLike;
}
试试这个?我觉得clickedLike不是布尔值。在代码中,您将比较clickedLike==0和clickedLike++。它不是int吗?@ObjectJosh已将其更改为反映我当前的代码-clickedLike是一个布尔值