基于vue实现简单登录方式的切换

<body>
		<span id="app">
			<div v-if="isMovePage===false">
				<!-- 通过key属性可控制组件是否复用,这里是控制输入组件值在切换后是否保存,key相同则复用,不同则不复用 -->
				<span v-if="type==='username'">
					<label>用户账号:</label>
					<input placeholder="用户账号" ref="message" key="a" />
				</span>
				<span v-else>
					<label>邮箱地址:</label>
					<input placeholder="邮箱地址" ref="emailMessage"  key="a"/>
				</span>
				<button @click="login">登录</button>
				<button @click="change">切换类型</button>
			</div>
			<div v-if="isMovePage===true">欢迎登录</div>
		</span>

		<script src="../js/v2.6.10/vue.js"></script>
		<script>
			let app = new Vue({
				el: '#app',
				data: {
					type: 'username',   //登录方式
					isMovePage: false,  //登录后页面转换的标识符
					isEmail: false      //判断是否是email登录方式的标识符
				},
				computed: {},
				methods: {
					change() {
						// 
						this.type = this.type === 'email' ? 'username' : 'email';
						if (this.type == 'email') {
							this.isEmail = true;
							// this.$refs.message.value='';
						} else {
							this.isEmail = false;
							//this.$refs.emailMessage.value='';可控制input内的内容
						}
						
						console.info('切换到' + this.type + '模式');
					},
					login() {
						if (this.isEmail==true) {
							// 此处可设置邮箱账号密码
							if (this.$refs.emailMessage.value == "123") {
								this.isMovePage = true;
								console.log('登陆成功');
							}
						} 
						if(this.isEmail==false){
							// 此处可设置用户账号密码
							if (this.$refs.message.value == "nxb") {
								this.isMovePage = true;
								console.log('登陆成功');
							}
						}
					}
				},
			});
		</script>
	</body>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值