小编Sco*_*ttR的帖子

如何以编程方式启动 Vuetify 对话框并等待响应

我对 Vue.js 和 Vuetify 相当陌生(使用 AngularJS 好几年了,但我们公司正在转向 Vue.js)。我想要完成的是,当用户单击“登录”按钮时,它会进行一些检查(即用户名不能为空)并启动 Vuetify 对话框以提醒用户。我知道 Vuetify 有一些内置的验证,但正在寻找一些更强大的东西,我可以等待响应(即当我需要等待诸如我可以使用您的历史记录/位置之类的东西时)。

基本上想做:

if (!userName){
    userName = await mbox('You must Enter your Username');
    return
}
Run Code Online (Sandbox Code Playgroud)

或者

var mProceed = await mbox('Can we use your location for awesome stuff?');
Run Code Online (Sandbox Code Playgroud)

其中 mbox(一个简单的消息框弹出框)是一个函数,它返回一个 promise,以编程方式加载一个 vue 组件,将它添加到 dom,然后等待响应。

示例对话框屏幕截图

IE

async function mbox (mText) {
    // load dialog component here and set message passed in
    // How Do I load the template / wait for it?
    return dialogResult

}
Run Code Online (Sandbox Code Playgroud)

Vue 组件看起来像(按钮标题和文本是我传递给我的 mbox 函数的变量):

<template>
<v-layout …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js vuejs2 vuetify.js

2
推荐指数
2
解决办法
1万
查看次数

标签 统计

javascript ×1

vue.js ×1

vuejs2 ×1

vuetify.js ×1