demingshangjia/pages/login/login.vue
2020-08-08 15:09:56 +08:00

442 lines
8.5 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>
<!-- login页面 -->
<view>
<view class="login">
<image class="images" :src="url"></image>
<view class="backes"></view>
<view class="title_top">德铭阳光在线-商家端</view>
<view class="content">
<view class="title">
<view v-bind:class="[state==0 ? 'show' : '']" @click="changetab(0)">
商家登录
</view>
<view v-bind:class="[state==1 ? 'show' : '']" @click="changetab(1)">
达人登录
</view>
</view>
<view class="" v-if="state==0">
<view class="labales">
<image src="../../static/image/login/login(3).png"></image>
<input v-model="zhanghao" type="text" placeholder="请输入账号" />
</view>
<view class="labales">
<image src="../../static/image/login/login(1).png"></image>
<input v-model="mima" type="password" placeholder="请输入密码" />
</view>
</view>
<view class="" v-else>
<view class="labales">
<image src="../../static/image/login/login(3).png"></image>
<input v-model="zhanghaoA" type="text" placeholder="请输入账号" />
</view>
<view class="labales">
<image src="../../static/image/login/login(1).png"></image>
<input v-model="mimaA" type="password" placeholder="请输入密码" />
</view>
</view>
</view>
<!-- denglu QQ weixin -->
<button @click="logins">{{ login }}</button>
<!-- <u-button :custom-style="customStyle" ></u-button> -->
<u-toast ref="uToast" />
</view>
</view>
</template>
<script>
export default {
data() {
return {
list: [
{
checked: false,
disabled: false
}
],
value: '',
login: '登录',
show: false,
zhanghao: 'seller',
mima: '123456',
zhanghaoA: '18953829598 ',
mimaA: '123456',
url: '',
state:0,
clickstate:false
};
},
methods: {
// 改变登陆类型
changetab(num){
this.state = num
},
// 选中某个复选框时由checkbox时触发
checkboxChange(e) {
//console.log(e);
},
// 选中任一checkbox时由checkbox-group触发
checkboxGroupChange(e) {
// console.log(e);
},
mask_u() {
this.show = !this.show;
},
// 获取验证码倒计时
getCode() {
console.log('11');
this.loading();
},
loading() {},
logins() {
// 判断是否可以点击
if(this.clickstate==false){
this.clickstate=true
}else{
this.$refs.uToast.show({
title: "不能重复提交",
type: 'error'
});
return
}
// 清除本地存储才可以正常登陆(具体原因没有仔细检查)
// uni.clearStorage();
// 账号登录1达人0商家
if(this.state==1){
this.$u.api.login({ member_name: this.zhanghaoA, member_password: this.mimaA }).then(res => {
console.log(JSON.stringify(res))
if (res.errCode != 0) {
// 恢复按钮可点击状态
this.clickstate=false
this.$refs.uToast.show({
title: res.message,
type: 'error'
});
} else {
uni.setStorageSync('token', res.data.token);
uni.setStorageSync('userinfo', res.data);
uni.setStorageSync('rongyun', res.data.rongcloud_token);
this.$u.route({
url: '/pages/user/myinfo'
});
}
});
}else{
this.$u.api.shoplogin({ member_name: this.zhanghao, member_password: this.mima }).then(res => {
console.log(JSON.stringify(res))
if (res.errCode != 0) {
// 恢复按钮可点击状态
this.clickstate=false
this.$refs.uToast.show({
title: res.message,
type: 'error'
});
} else {
uni.setStorageSync('token', res.data.token);
uni.setStorageSync('userinfo', res.data);
uni.setStorageSync('rongyun', res.data.rongcloud_token);
this.$u.route({
url: '/pages/index/index',
type: 'switchTab'
});
}
});
}
}
},
onLoad() {
let token = uni.getStorageSync('token');
if (token != undefined && token) {
this.$u.route({
url: '/pages/index/index'
});
}
}
};
</script>
<style lang="scss" scoped>
.login {
// background: url(../../static/pageA/loginbackground.png) no-repeat!important;
.images {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: -1;
}
.backes {
background: rgba(0, 0, 0, 0.4);
position: fixed;
width: 100%;
height: 100%;
z-index: -1;
}
text {
z-index: 9;
color: #fff;
}
.more_Login {
overflow: hidden;
zoom: 1;
width: 630rpx;
margin: 0 auto;
}
.more_Login text {
display: inline-block;
width: 50%;
float: left;
font-size: 30rpx;
color: rgba(255, 255, 255, 1);
line-height: 36px;
margin: 97rpx 0;
}
.more_Login .other {
text-align: right;
}
}
.title {
font-size: 36rpx;
font-weight: bold;
margin-bottom: 150rpx;
color: #fff;
display: flex;
justify-content: flex-start;
}
.title view{
height: 100rpx;
line-height: 100rpx;
font-size: 24rpx;
padding: 0 20rpx;
}
.title .show{
font-size: 34rpx;
font-weight: bold;
}
.content {
width: 630rpx;
z-index: 99999;
margin: 0 auto;
padding-top: 300rpx;
.labales text {
font-size: 30rpx;
}
.labales {
border-bottom: 1px #fff solid;
margin-bottom: 180rpx;
height: 70rpx;
line-height: 70rpx;
position: relative;
input {
width: 80%;
margin-left: 60rpx;
color: #fff;
letter-spacing: 2rpx;
background-color: none;
}
}
.labales image {
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 39rpx;
height: 40rpx;
}
.labales:nth-child(3) {
position: relative;
margin-bottom: 60rpx;
}
.identifying {
position: absolute;
right: 0;
top: 0;
bottom: 0;
margin: auto;
font-size: 30rpx;
font-weight: 500;
color: rgba(255, 120, 15, 1);
line-height: 20px;
}
}
.uni-input-input,
.uni-input-placeholder {
color: #fff !important;
letter-spacing: 2rpx;
}
.pact text {
font-size: 22rpx;
font-weight: 400;
color: rgba(255, 255, 255, 1);
line-height: 36px;
}
.pact_text {
font-size: 22px;
font-weight: 400;
color: rgba(129, 188, 253, 1) !important;
line-height: 36px;
}
//单选框的样式
.pact {
position: relative;
padding-left: 40rpx;
overflow: hidden; //超出的文本隐藏
text-overflow: ellipsis; //溢出用省略号显示
white-space: nowrap; //溢出不换行
}
.u-checkbox-group {
position: absolute;
left: 0;
top: 0;
bottom: 0;
margin: auto;
}
.u-checkbox__icon--square {
border-radius: 50rpx !important;
width: 22rpx;
height: 22rpx;
}
.u-btn {
width: 628rpx;
height: 98rpx;
background: rgba(255, 120, 15, 1) !important;
border-radius: 49rpx;
margin: 0 auto;
font-size: 36rpx;
color: rgba(255, 255, 255, 1) !important;
line-height: 36px;
border: 1px #ff780f solid;
outline: none;
border-color: rgba(255, 120, 15, 1) !important;
}
.warp {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
.rect {
width: 558rpx;
height: 300rpx;
background-color: #fff;
border-radius: 20rpx;
overflow: hidden;
zoom: 1;
position: relative;
display: flex;
flex-wrap: wrap;
display: -webkit-flex; /* Safari */
.rect_view {
width: 100rpx;
height: 100rpx;
.image {
width: 45rpx;
height: 53rpx;
display: inline-block;
}
flex: 1;
margin-top: 77rpx;
}
.rect_view:nth-child(2) image {
width: 57rpx;
height: 45rpx;
}
.rect_butoon {
width: 100%;
position: absolute;
bottom: 0;
height: 85rpx;
text-align: center;
line-height: 85rpx;
border-top: 1px #999999 solid;
}
view {
color: #666;
font-size: 24rpx;
margin-top: 30rpx;
}
}
.rect_view:nth-child(1) image,
.rect_view:nth-child(1) view {
float: right;
}
.rect_view:nth-child(1) image {
margin-right: 20rpx;
}
.rect_view:nth-child(1) {
position: relative;
margin-right: 79rpx;
}
.rect_view:nth-child(1) view {
position: absolute;
bottom: 0;
right: 0;
}
.rect_view:nth-child(2) image,
.rect_view:nth-child(2) view {
float: left;
}
.rect_view:nth-child(2) image {
margin-left: 20rpx;
}
.rect_view:nth-child(2) {
position: relative;
}
.rect_view:nth-child(2) view {
position: absolute;
bottom: 0;
left: 0;
}
.title_top {
position: fixed;
top: calc(var(--status-bar-height) + 18px);
left: 0;
right: 0;
margin: auto;
font-size: 36rpx;
color: rgba(255, 255, 255, 1);
text-align: center;
width: 100%;
/* 如果您想让slot内容占满整个导航栏的宽度 */
/* flex: 1; */
/* 如果您想让slot内容与导航栏左右有空隙 */
/* padding: 0 30rpx; */
background: none;
letter-spacing: 4rpx;
}
button{
width: 670rpx;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
border-radius: 50rpx;
height: 100rpx;
padding: 0 40rpx;
background-color: #ff780f;
color: #FFFFFF;
}
</style>