阻塞式弹窗实现方法

发布于 2022-09-05 22:49:11 字数 242 浏览 40 评论 0

以前的web应用,一笔业务流程,会提示好几次确定、取消:确定继续执行代码,取消终止业务流程。

以前的代码是阻塞式的,没有点击‘确认’、‘取消’按钮,后边的代码是不会执行的。
现在项目重构,弹窗都是个div弹窗,无法阻塞后续的代码。

想问问,目前js框架有没有实现阻塞式的div弹窗。(目前是使用回调,把后续的代码写道回调方法里,但是当确认、取消后有2个以上,代码就很复杂了,而且后续想再业务流程中再添加一个确认、取消的判断很难改。)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

香草可樂 2022-09-12 22:49:11

js没法实现模式对话框,不过可以用await或者promise来实现类似的效果,避免深度回调

像极了他 2022-09-12 22:49:11

真要解决阻塞的话,可能得要用es7的await。至于目前来说,promise可能会好一些,但是个人觉得在这一点上和封装较好回调差别并不大。
另外,如果有两层以上的确定取消嵌套的话,我觉得这个交互可能存在一点问题了吧。。

凉宸 2022-09-12 22:49:11

想问问,目前js框架有没有实现阻塞式的div弹窗。

没有。除了 confirm , prompt 之外,没有你理解的“阻塞”。

js 的环境是异步的,异步用“回调”,而不用“返回”。

梦中的蝴蝶 2022-09-12 22:49:11

可以看看layer的弹窗实现……基本能够实现你想要的效果!

高冷爸爸 2022-09-12 22:49:11

我觉得你的思路是有问题的 改成div弹窗和阻塞不阻塞并没有关系 弹窗出现点击确定和取消 可以使用枷锁或者遮罩来阻止用户其他操作 把代码的功能尽量封装细一点 方便自己理清逻辑

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文