我对 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)