Files
houyi-uniapp/pages/me/login.vue
PC-202306242200\Administrator 85b89ccea7 first commit
2026-03-28 23:27:25 +08:00

193 lines
3.7 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<view class="t-login">
<u-navbar :autoBack="true"></u-navbar>
<!-- 页面装饰图片 -->
<image class="img-a" src="/static/2.png"></image>
<image class="img-b" src="/static/3.png"></image>
<!-- 标题 -->
<view class="t-b">{{ title }}</view>
<form class="cl">
<view class="t-a">
<image src="/static/icon/acee.png"></image>
<input placeholder="请输入用户名" maxlength="32" v-model="form.username" />
</view>
<view class="t-a">
<image src="/static/icon/pass.png"></image>
<input style="margin-bottom: 20rpx;" type="password" maxlength="32" placeholder="请输入密码" v-model="form.password" />
</view>
<view class="u-flex u-flex-reverse" style="margin-bottom: 20rpx;">
<view @click="$utils.tn('/pages/me/getBackAccount')">
<u--text color="#5677fc" text="找回用户名"></u--text>
</view>
<view @click="$utils.tn('/pages/me/password')" style="margin-right: 25rpx">
<u--text color="#5677fc" text="忘记密码"></u--text>
</view>
</view>
<button class="b_login" @click="login()"> </button>
<button class="b_register" @tap="register()"> </button>
</form>
</view>
</template>
<script>
export default {
data() {
return {
title: '欢迎回来!', //填写logo或者app名称也可以用欢迎回来看您需求
form: {
username: '',
password: ''
}
};
},
onLoad() {},
methods: {
async login() {
if (!this.form.username) return uni.showToast({ title: '请输入用户名', icon: 'none' });
if (!this.form.password) return uni.showToast({ title: '请输入密码', icon: 'none' });
// 注册
try {
let { data } = await this.$http.post('/shop/v10/auth/login', this.form);
this.$store.commit('auth/setUser', data.user);
this.$store.commit('auth/setToken', data.token);
uni.navigateBack();
} catch (e) {
console.log(e);
}
},
register() {
uni.navigateTo({ url: '/pages/me/logon' });
}
}
};
</script>
<style>
page {
background-color: #fff;
}
.img-a {
position: absolute;
width: 100%;
top: -280rpx;
right: -100rpx;
}
.img-b {
position: absolute;
width: 50%;
bottom: 0;
left: -50rpx;
}
.t-login {
width: 600rpx;
margin: 0 auto;
font-size: 28rpx;
color: #000;
}
.t-login .b_login {
font-size: 28rpx;
background: #5677fc;
color: #fff;
height: 90rpx;
line-height: 90rpx;
border-radius: 50rpx;
box-shadow: 0 5px 7px 0 rgba(86, 119, 252, 0.2);
}
.t-login .b_register {
font-size: 28rpx;
background: rgba(86, 119, 252, 0.6);
color: #fff;
height: 90rpx;
line-height: 90rpx;
border-radius: 50rpx;
box-shadow: 0 5px 7px 0 rgba(86, 119, 252, 0.2);
margin-top: 30rpx;
}
.t-login input {
padding: 0 20rpx 0 120rpx;
height: 90rpx;
line-height: 90rpx;
margin-bottom: 50rpx;
background: #f8f7fc;
border: 1px solid #e9e9e9;
font-size: 28rpx;
border-radius: 50rpx;
}
.t-login .t-a {
position: relative;
}
.t-login .t-a image {
width: 40rpx;
height: 40rpx;
position: absolute;
left: 40rpx;
top: 28rpx;
border-right: 2rpx solid #dedede;
padding-right: 20rpx;
}
.t-login .t-b {
text-align: left;
font-size: 46rpx;
color: #000;
padding: 300rpx 0 120rpx 0;
font-weight: bold;
}
.t-login .t-c {
position: absolute;
right: 22rpx;
top: 22rpx;
background: #5677fc;
color: #fff;
font-size: 24rpx;
border-radius: 50rpx;
height: 50rpx;
line-height: 50rpx;
padding: 0 25rpx;
}
.t-login .t-d {
text-align: center;
color: #999;
margin: 80rpx 0;
}
.t-login .t-e {
text-align: center;
width: 250rpx;
margin: 80rpx auto 0;
}
.t-login .t-g {
float: left;
width: 50%;
}
.t-login .t-e image {
width: 50rpx;
height: 50rpx;
}
.t-login .uni-input-placeholder {
color: #000;
}
.cl {
zoom: 1;
}
.cl:after {
clear: both;
display: block;
visibility: hidden;
height: 0;
content: '\20';
}
</style>