elementUi里面的messageBox的$prompt使用(里面进行异步操作)

部署运行你感兴趣的模型镜像
reject(row) {
   let that = this;
     this.$prompt('驳回理由', '提示', {
         inputPlaceholder: '请输入驳回理由',
         confirmButtonText: '确定',
         cancelButtonText: '取消',
         inputErrorMessage: '输入不能为空',
         inputValidator: (value) => {       // 点击按钮时,对文本框里面的值进行验证
             if(!value) {
                 return '输入不能为空';
             }
         },
         callback: function (action, instance) {
             if(action === 'confirm') {       
                 new Promise((resolve,reject)=>{             // 点击确定,进行的异步操作
                     audit({id: row.id, status: row.status, cause: instance.inputValue}).then( res => {
                         if(res.code === 'R0000') {
                             that.$message({
                                 type: 'success',
                                 message: '驳回成功'
                             });
                         }
                     })
                 }).then((error) => {
                     console.log(error);
                 })
             }else {
                 that.$message({
                     type: 'info',
                     message: '取消驳回'
                 });
             }
         }
     })
 }

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

使用 Element UI 的 `MessageBox` 时,默认情况下弹框不会自动关闭,通常需要用户手动点击按钮来关闭。如果希望实现自动关闭的功能,可以通过以下方法进行处理: ### 使用 `setTimeout` 手动控制关闭 由于 `MessageBox` 本身并没有提供直接的自动关闭参数,但可以通过访问其返回的 Promise 对象,并结合 `setTimeout` 来实现定时关闭。 ```javascript const h = this.$createElement; const messageBoxInstance = this.$msgbox({ title: '提示', message: h('p', null, '身份验证失败,即将跳转登录页面'), showCancelButton: false, type: 'warning' }); // 设置定时器,在指定时间后关闭弹窗 setTimeout(() => { messageBoxInstance.then(action => { // 如果需要在此处执行跳转逻辑 window.location.href = '/login'; // 示例跳转 }); }, 3000); // 3秒后关闭 ``` ### 结合 `Promise` 和 `close` 方法 Element UI 的 `MessageBox` 实例提供了 `close` 方法,可以调用该方法来主动关闭弹框。可以在创建弹框后保存其实例引用,并通过 `setTimeout` 调用 `close` 方法[^1]。 ```javascript const messageBoxInstance = this.$alert('系统将在3秒后跳转至登录页', '自动关闭提示', { confirmButtonText: '确定', callback: action => { console.log('用户操作:', action); } }); setTimeout(() => { messageBoxInstance.close(); // 执行跳转或其他业务逻辑 this.$router.push('/login'); }, 3000); ``` ### 注意事项 - 在实际项目中,建议将自动关闭的时间设置为合理值(如 2~5 秒),以确保用户有足够时间阅读提示信息。 - 若涉及到敏感操作或需要用户确认的行为,不建议使用自动关闭功能,以免影响用户体验和交互流程。 通过上述方式,可以灵活地控制 `MessageBox` 的显示与关闭行为,从而满足特定场景下的需求。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值