我有一个简单的DropdownButton元素和onChange事件。
onChanged: (String newValue) {
if (newValue == "Log out") {
print("Inside IF");
setState(){
user.navigateToPreviousPage(Login(), context, false);
}
}
},
但是从这里我只能得到这个print(“ Inside IF”)...它没有调用应该删除用户令牌并导航到登录页面的函数。 此外,没有错误或警告...
这是怎么了?我的全班都是无状态小部件。我应该将其更改为“有状态”吗?
答案 0 :(得分:1)
您以错误的方式调用setState:
setState(){
user.navigateToPreviousPage(Login(), context, false);
}
正确的方法:
setState(() {
user.navigateToPreviousPage(Login(), context, false);
});
您应该从您要关闭的小部件中调用Navigator.pop