在满足特定条件后,用户按下此按钮后,我试图显示一个警报对话框。如果文本为空,则将弹出一个对话框,但是使用我在下面尝试的内容,即使按下按钮后文本不为空,它仍然会弹出对话框。
RaisedButton(
onPressed: priceController.text == ""
? () => showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text("Enter a price"),
);
})
: () => apiRequest(url, {
'price': priceController.text,
'user_id': "user2"
}),
child: Text("Set Level"),
);
答案 0 :(得分:2)
只有两个函数而不是只有两个函数,然后在其中编写逻辑。 像这样:
RaisedButton(
onPressed: () {
if (priceController.text == "") {
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text("Enter a price"),
);
});
} else {
apiRequest(url, {'price': priceController.text, 'user_id': "user2"});
}
},
child: Text("Set Level"),
);