vue写一个点击登录注册按钮之后弹出类似于alter界面的登录界面
时间: 2023-07-18 11:09:06 浏览: 44
可以使用Vue.js结合Bootstrap框架实现这个功能。首先,需要在Vue.js中定义一个数据变量来表示登录或注册的状态。当用户点击登录或注册按钮时,该变量会被更新。接下来,可以使用Bootstrap的模态框组件来显示登录或注册界面。下面是一个示例代码:
```html
<template>
<div>
<button @click="showLoginModal">登录</button>
<button @click="showRegisterModal">注册</button>
<div class="modal" :class="{ 'is-active': showModal }">
<div class="modal-background" @click="closeModal"></div>
<div class="modal-content">
<div class="box">
<h1>{{ modalTitle }}</h1>
<form>
<div class="field">
<label class="label">用户名</label>
<div class="control">
<input class="input" type="text" v-model="username">
</div>
</div>
<div class="field">
<label class="label">密码</label>
<div class="control">
<input class="input" type="password" v-model="password">
</div>
</div>
<div class="field">
<div class="control">
<button class="button is-primary" @click.prevent="submitForm">提交</button>
</div>
</div>
</form>
</div>
</div>
<button class="modal-close is-large" aria-label="close" @click="closeModal"></button>
</div>
</div>
</template>
<script>
export default {
data() {
return {
showModal: false,
modalTitle: '',
username: '',
password: ''
}
},
methods: {
showLoginModal() {
this.showModal = true
this.modalTitle = '登录'
},
showRegisterModal() {
this.showModal = true
this.modalTitle = '注册'
},
closeModal() {
this.showModal = false
},
submitForm() {
// 处理表单提交逻辑
}
}
}
</script>
```
在上面的代码中,`showModal`变量控制模态框是否显示。当用户点击登录或注册按钮时,会调用`showLoginModal`或`showRegisterModal`方法来设置`showModal`为`true`并设置模态框的标题。模态框的内容使用了Bootstrap的样式,包括`modal`类和`modal-background`类。在模态框内部,使用了一个表单来获取用户输入的用户名和密码,当用户点击提交按钮时,会调用`submitForm`方法来处理表单提交的逻辑。