用户在满足特定条件后按下此按钮后,我会尝试显示警告对话框。如果文本为空它将弹出一个对话框但是使用我在下面尝试的内容,即使按下按钮后文本不为空,它仍会弹出对话框。
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"),
);
而不是拥有两个函数只需要一个并在内部编写逻辑。像这样:
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"),
);