在我的React Native应用程序中,我经常需要一些确认弹出框。我想用我自己的组件样式以一种优雅的方式显示我的弹出窗口,所以我使用情态而不是警报命令。
有没有办法像下面这样简单地写一行代码:
function myCallerFunction() {
const lv_conf_result = showConfirmPopup("Please confirm");
if (lv_conf_result)
{
// ... do something
}
}
我的意思是在showConfirmPopup"函数上面,我可以显示我自己的模式,并得到哪个按钮按下而不留下调用函数myCallerFunction和这个函数的本地状态?
谢谢
你可以像这样使用async/await:
async function myCallerFunction() {
const lv_conf_result = await showConfirmPopup("Please confirm");
if (lv_conf_result)
{
// ... do something
}
}
然后在你的函数showConfirmPopup
:
async function showConfirmPopup(message) {
const promise = new Promise();
// codes to display your dialog
...
// inside 'confirm' button press event handler
...
promise.resolve(value);
...
// inside 'cancel' button press event handler
...
promise.reject();
...
return promise;
}