|
@@ -0,0 +1,550 @@
|
|
|
+<template>
|
|
|
+ <view class="body" :style="{height:screenHeight}">
|
|
|
+ <image class="login-bg" :src="staticUrl+'/img/login-bg.png'" mode="widthFix"></image>
|
|
|
+ <u-toast ref="uToast"></u-toast>
|
|
|
+ <view style="height: 40%;position: relative;z-index: 10;">
|
|
|
+ <view class="logo-wrap">
|
|
|
+ <img :src="logoSrc" class="logo" alt="">
|
|
|
+ <!-- <img :src="sitename" class="sitename" alt=""> -->
|
|
|
+<!-- <u--image :src="logoSrc" width="200rpx" height="200rpx"></u--image>
|
|
|
+ <u--image :src="sitename" width="460rpx" height="142rpx"></u--image> -->
|
|
|
+ </view>
|
|
|
+ <!-- <u-button text="getUserProfile" type="success" :hairline="false" throttleTime="2000" shape="circle" open-type="getUserProfile"
|
|
|
+ @click="getUserProfile"></u-button> -->
|
|
|
+ <!-- <u-button v-if="loginBtn" text="手机号快捷登录" type="success" :hairline="false" throttleTime="2000" shape="circle"
|
|
|
+ @click="openAuth"></u-button> -->
|
|
|
+ <view class="btn-wrap" style="margin:94rpx">
|
|
|
+ <!-- <u-button
|
|
|
+ v-if="loginBtn&&checked.length>0"
|
|
|
+ :hair-line='false'
|
|
|
+ type="error"
|
|
|
+ color="#ED0000"
|
|
|
+ throttleTime="2000"
|
|
|
+ shape="circle"
|
|
|
+ open-type="getPhoneNumber"
|
|
|
+ @getphonenumber="authPhone">登录
|
|
|
+ </u-button> -->
|
|
|
+ <u-button
|
|
|
+ v-if="loginBtn&&checked.length>0"
|
|
|
+ :hair-line='false'
|
|
|
+ type="error"
|
|
|
+ color="#ED0000"
|
|
|
+ throttleTime="2000"
|
|
|
+ shape="circle"
|
|
|
+ open-type="getUserInfo"
|
|
|
+ @getphonenumber="wxLogin">登录
|
|
|
+ </u-button>
|
|
|
+ <u-button
|
|
|
+ v-else
|
|
|
+ :hair-line='false'
|
|
|
+ type="error"
|
|
|
+ color="#ED0000"
|
|
|
+ @click="disabledClick"
|
|
|
+ shape="circle">登录
|
|
|
+ </u-button>
|
|
|
+ </view>
|
|
|
+ <view class="rule-wrap u-flex u-flex-wrap u-row-center">
|
|
|
+ <u-checkbox-group v-model="checked" @change="checkboxChange" placement="row">
|
|
|
+ <u-checkbox activeColor="#1677FF" name="同意" labelSize="24rpx" shape="circle" label="我已阅读并同意"></u-checkbox>
|
|
|
+ </u-checkbox-group>
|
|
|
+ <text class="link" @click="$u.route('/pages/login/regulation',{regulationName:'用户服务协议',type:1})">《用户服务协议》</text>
|
|
|
+ 和<text class="link" @click="$u.route('/pages/login/regulation',{regulationName:'用户隐私政策',type:2})">《用户隐私政策》</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <!-- 微信获取手机号弹窗 -->
|
|
|
+ <!-- <u-modal :show="showAuthorizePhone" :show-title="false"
|
|
|
+ :show-confirm-button="false">
|
|
|
+ <view class="slot-content">
|
|
|
+ <div class="auth-card">
|
|
|
+ <div class="img">
|
|
|
+ <img class="avatar-img" :src="logoSrc" mode="widthFix">
|
|
|
+ </div>
|
|
|
+ <div class="title">{{bname}}</div>
|
|
|
+ <div class="content">申请获得您的手机号</div>
|
|
|
+ </div>
|
|
|
+ <div class="auth-btncard u-flex u-row-between">
|
|
|
+ <div class="btn-unok"><u-button :hair-line='false' :custom-style="customStyleUnOk" @click="showAuthorizePhone=false">拒绝</u-button></div>
|
|
|
+ <div class="btn-ok"><u-button :hair-line='false' :custom-style="customStyleOk" open-type="getPhoneNumber" @getphonenumber="authPhone"> 允许</u-button></div>
|
|
|
+ </div>
|
|
|
+ </view>
|
|
|
+ </u-modal> -->
|
|
|
+ <!-- 微信获取用户头像昵称弹窗 -->
|
|
|
+ <!-- <u-modal :show="showAuthorizeUser" :show-title="false"
|
|
|
+ :show-confirm-button="false">
|
|
|
+ <view class="slot-content">
|
|
|
+ <div class="auth-card">
|
|
|
+ <div class="img">
|
|
|
+ <img class="avatar-img"
|
|
|
+ :src="logoSrc"
|
|
|
+ mode="widthFix">
|
|
|
+ </div>
|
|
|
+ <div class="title">{{bname}}</div>
|
|
|
+ <div class="content">邀请您补全个人信息<br></br>(昵称、头像)</div>
|
|
|
+ <div style="margin-left: 100rpx;margin-right: 100rpx">
|
|
|
+ <u-form :model="user" ref="uForm">
|
|
|
+ <u-form-item label="头像">
|
|
|
+ <button class="avatar-wrapper" open-type="chooseAvatar" @chooseavatar="onChooseAvatar" slot="right">
|
|
|
+ <image class="avatar" :src="user.avatar"></image>
|
|
|
+ </button>
|
|
|
+ </u-form-item>
|
|
|
+ <u-form-item label="昵称">
|
|
|
+ <input type="nickname" class="weui-input u-border-bottom" @blur="nickNameInput" placeholder="请输入昵称"/>
|
|
|
+ </u-form-item>
|
|
|
+ </u-form>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="auth-btncard">
|
|
|
+ <div class="btn-unok"><u-button :hair-line='false' :custom-style="customStyleUnOk" @click="showAuthorizeUser=false"> 拒绝</u-button></div>
|
|
|
+ <div class="btn-ok"><u-button :hair-line='false' :custom-style="customStyleOk" @click="authUser"> 允许</u-button></div>
|
|
|
+ </div>
|
|
|
+ </view>
|
|
|
+ </u-modal> -->
|
|
|
+
|
|
|
+
|
|
|
+ </view>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+ export default {
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ staticUrl:this.$commonConfig.staticUrl,
|
|
|
+ checked:false,
|
|
|
+ checkboxVal:null,
|
|
|
+ loginBtn:true,
|
|
|
+ bname:'旭烁集团',
|
|
|
+ //屏幕高度
|
|
|
+ screenHeight: "",
|
|
|
+ logoSrc: "/static/logo.png",
|
|
|
+ // sitename:"/static/sitename.png",
|
|
|
+ miniappLoginInfo:null,
|
|
|
+ hasUserInfo:false,
|
|
|
+ userInfo: null,
|
|
|
+ user:{
|
|
|
+ avatar:'https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0',
|
|
|
+ name:'',
|
|
|
+ mobile:'',
|
|
|
+ },
|
|
|
+ code: '',
|
|
|
+ showAuthorizeUser: false,
|
|
|
+ showAuthorizePhone: false,
|
|
|
+ customStyleUnOk:{},
|
|
|
+ customStyleOk:{'margin-left': '30px',color:'#00A447'},
|
|
|
+ backUrl:null,
|
|
|
+ scene:'',
|
|
|
+ };
|
|
|
+ },
|
|
|
+ onLoad() {
|
|
|
+ let that = this;
|
|
|
+ //获取屏幕高度,我的项目再store里已经取到了
|
|
|
+ uni.getSystemInfo({
|
|
|
+ success: (res) => {
|
|
|
+ this.screenHeight = res.windowHeight + "px"
|
|
|
+ }
|
|
|
+ });
|
|
|
+ uni.getStorage({
|
|
|
+ key: 'backUrl',
|
|
|
+ success: function (res) {
|
|
|
+ that.backUrl = '/'+res.data;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ onShow() {
|
|
|
+ // uni.showLoading({
|
|
|
+ // mask:true
|
|
|
+ // });
|
|
|
+ this.getChatCode();
|
|
|
+ // setTimeout(() => {
|
|
|
+ // this.openAuth();
|
|
|
+ // // this.showAuthorizeUser = true //弹出头像用户名
|
|
|
+ // }, 100);
|
|
|
+ let userInfo = uni.getStorageSync('userInfo');
|
|
|
+ this.user.name = userInfo.name;
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ openAuth(){
|
|
|
+ this.showAuthorizePhone = true;
|
|
|
+ // let userInfo = uni.getStorageSync('userInfo')
|
|
|
+ // console.log('userInfo>>>>>>>>>>>>>>>>>>>>>',userInfo)
|
|
|
+ // if(userInfo){
|
|
|
+ // this.showAuthorizeUser = true;
|
|
|
+ // }else{
|
|
|
+ // this.showAuthorizePhone = true;
|
|
|
+ // }
|
|
|
+ // uni.hideLoading()
|
|
|
+ },
|
|
|
+ getChatCode() {
|
|
|
+ //因为作用域先提前赋值
|
|
|
+ var that = this
|
|
|
+ //使用uni封装的一键登录方法
|
|
|
+ uni.login({
|
|
|
+ provider: 'weixin',
|
|
|
+ success(res) {
|
|
|
+ //成功后带着微信登录返回的code去请求我们的后端
|
|
|
+ that.code = res.code;
|
|
|
+ // console.log('code',that.code);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getUserProfile() {
|
|
|
+ var that = this
|
|
|
+ uni.getUserProfile({
|
|
|
+ desc: "获取你的昵称、头像",
|
|
|
+ success(res) {
|
|
|
+ console.log('getUserProfile success',res);
|
|
|
+ if (res.errMsg == "getUserProfile:ok" && res.userInfo != undefined) {
|
|
|
+ //我用store来存储一些数据,你可以放到你要放的地方
|
|
|
+ console.log(' res.userInfo', res.userInfo);
|
|
|
+ // that.$u.vuex('wx_user_info.nickName', res.userInfo.nickName);
|
|
|
+ // that.$u.vuex('wx_user_info.avatarUrl', res.userInfo.avatarUrl);
|
|
|
+ // that.getChatCode()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ complete(res) {
|
|
|
+ // console.log('complete',res);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //获取昵称输入内容
|
|
|
+ // userNameInput(e){
|
|
|
+ // this.user.nickName = e.detail.value
|
|
|
+ // },
|
|
|
+ onChooseAvatar(e) {
|
|
|
+ console.log('头像信息》')
|
|
|
+ console.log(e)
|
|
|
+ this.user.avatar = e.detail.avatarUrl;
|
|
|
+ },
|
|
|
+ async authPhone(e){
|
|
|
+ console.log('checked',this.checked);
|
|
|
+ console.log('detail',e.detail);
|
|
|
+ let errMsg = e.detail?.errMsg;
|
|
|
+ if(errMsg!='getPhoneNumber:ok'){
|
|
|
+ uni.showToast({
|
|
|
+ title:'您已拒绝使用!',
|
|
|
+ icon:'error'
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.showAuthorizePhone=false;
|
|
|
+ this.loginBtn = false;
|
|
|
+ let _this = this;
|
|
|
+
|
|
|
+ await uni.getStorage({
|
|
|
+ key: 'scene',
|
|
|
+ success: function (res) {
|
|
|
+ // console.log('scene====',res.data);
|
|
|
+ if(res.data){
|
|
|
+ _this.scene = res.data
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ // this.getMobile()
|
|
|
+ let mobileData = await this.$u.api.getMobile({code:e.detail.code});
|
|
|
+ // console.log('mobileData',mobileData);
|
|
|
+ let mobile = mobileData.data?.mobile;
|
|
|
+ if(mobile){
|
|
|
+ this.mobile = mobile
|
|
|
+ }else{
|
|
|
+ // uni.showToast({
|
|
|
+ // title: '没有获取手机号',
|
|
|
+ // icon:'error',
|
|
|
+ // duration: 2000
|
|
|
+ // });
|
|
|
+ }
|
|
|
+ this.login(e);
|
|
|
+ this.loginBtn = true;
|
|
|
+ },
|
|
|
+ async login(e){
|
|
|
+ // console.log('e',e);
|
|
|
+ let _this = this;
|
|
|
+ let wxinfo = await this.$u.api.wxinfo({code:this.code});
|
|
|
+ let {openid,sessionKey,unionid} = wxinfo.data;
|
|
|
+
|
|
|
+ _this.$u.vuex('vuex_wechatOpenid', openid);
|
|
|
+ const { errMsg, iv, encryptedData } = e.detail;
|
|
|
+ if (errMsg !== 'getPhoneNumber:ok') return;
|
|
|
+ let data = {
|
|
|
+ code: this.code,
|
|
|
+ encryptedData: encryptedData,
|
|
|
+ ivStr: iv,
|
|
|
+ openId:openid,
|
|
|
+ sessionKey,
|
|
|
+ sourceType:1,
|
|
|
+ mobile:this.mobile
|
|
|
+ }
|
|
|
+ if(this.scene&&this.scene!='undefined'){
|
|
|
+ await this.$u.api.uncompress({scene:this.scene}).then(res=>{
|
|
|
+ data.agentId = res.data.agentId;
|
|
|
+ data.agentShopId = res.data.agentShopId;
|
|
|
+ data.sourceType = 2;
|
|
|
+ // console.log('uncompress',res.data);
|
|
|
+ }).catch(err=>{
|
|
|
+ console.log('uncompress',err);
|
|
|
+ })
|
|
|
+ }
|
|
|
+ // console.log('----------登陆中',data)
|
|
|
+ this.$u.api.login(data).then(res=>{
|
|
|
+ // console.log('微信登录返回结果========',res.data)
|
|
|
+ _this.$u.vuex('vuex_user_info', res.data);
|
|
|
+ // _this.$u.vuex('vuex_member_info',res.data);
|
|
|
+ // uni.setStorageSync('userInfo', res.data)
|
|
|
+ this.showAuthorizePhone = false;
|
|
|
+ uni.removeStorage({
|
|
|
+ key:'scene'
|
|
|
+ });
|
|
|
+ // console.log('res.data.userid',res.data.userid);
|
|
|
+ this.getMemberInfo(res.data.userId);
|
|
|
+
|
|
|
+ }).catch(err=>{
|
|
|
+ console.log('err',err);
|
|
|
+ this.showAuthorizePhone = false
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getMemberInfo(userid){
|
|
|
+ // console.log('userid',userid);
|
|
|
+ let _this = this;
|
|
|
+ this.$u.api.memberInfo({id:userid}).then(res=> {
|
|
|
+ if(res.code ===200) {
|
|
|
+ _this.userInfo = res.data;
|
|
|
+ this.$u.vuex('vuex_member_info', res.data);
|
|
|
+ // this.$u.vuex('vuex_member_info.avatar', 'https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0');
|
|
|
+ if(!res.data.name){
|
|
|
+ this.$u.vuex('vuex_member_info.name', '微信用户');
|
|
|
+ this.updateMemberInfo();
|
|
|
+ }else{
|
|
|
+ this.goBack();
|
|
|
+ }
|
|
|
+ // 下面需要获取微信头像和昵称
|
|
|
+ // if(res.data.name){
|
|
|
+ // _this.hasUserInfo = true;
|
|
|
+ // _this.userInfo = res.data;
|
|
|
+ // uni.navigateTo({
|
|
|
+ // url: '/pages/index/index'
|
|
|
+ // })
|
|
|
+ // }else{
|
|
|
+ // _this.showAuthorizeUser = true
|
|
|
+ // // uni.hideLoading()
|
|
|
+ // }
|
|
|
+ // console.log('---------登陆成功')
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ goBack(){
|
|
|
+ let url = this.backUrl&&this.backUrl.length>0?this.backUrl:'/pages/index/index';
|
|
|
+ // console.log('url',url);
|
|
|
+ uni.removeStorage({
|
|
|
+ key: 'backUrl',
|
|
|
+ success: function (res) {
|
|
|
+ // console.log('success');
|
|
|
+ uni.reLaunch({url: decodeURIComponent(url)});
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ updateMemberInfo(){
|
|
|
+ let params ={
|
|
|
+ id:this.userInfo.id,
|
|
|
+ // avatar:'https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0',
|
|
|
+ name:'微信用户'
|
|
|
+ };
|
|
|
+ this.$u.api.updateMemberInfo(params).then(res=>{
|
|
|
+ this.goBack();
|
|
|
+ }).catch(err=>{
|
|
|
+ console.log('err',err);
|
|
|
+ })
|
|
|
+ },
|
|
|
+ authUser(){
|
|
|
+ let userInfo = this.vuex_user_info || {};
|
|
|
+ // console.log('this===',this);
|
|
|
+ // console.log('vuex_user_info===',this.vuex_user_info);
|
|
|
+ // console.log('userInfo',userInfo);
|
|
|
+ // console.log('this.user',this.user);
|
|
|
+ if(!this.user.name){
|
|
|
+ uni.showToast({
|
|
|
+ title: '请输入您的昵称!',
|
|
|
+ icon:'error',
|
|
|
+ duration: 2000
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ userInfo.avatar = this.user.avatar;
|
|
|
+ userInfo.name = this.user.name;
|
|
|
+ this.userInfo = userInfo;
|
|
|
+ uni.setStorageSync('userInfo', userInfo)
|
|
|
+ this.user.id = userInfo.userid;
|
|
|
+ let param = {
|
|
|
+ id:this.user.id,
|
|
|
+ name:this.user.name,
|
|
|
+ avatar:this.user.avatar
|
|
|
+ }
|
|
|
+ this.$u.api.updateMemberInfo(param).then(res=>{
|
|
|
+ this.hasUserInfo = true;
|
|
|
+ this.showAuthorizeUser = false;
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/index/index'
|
|
|
+ })
|
|
|
+ }).catch(err=>{
|
|
|
+ console.log('err',err);
|
|
|
+ })
|
|
|
+ },
|
|
|
+ nickNameInput(e){
|
|
|
+ this.user.name = e.detail.value
|
|
|
+ },
|
|
|
+ checkboxChange(e){
|
|
|
+ this.checkboxVal = e[0];
|
|
|
+ },
|
|
|
+ disabledClick(){
|
|
|
+ // console.log('checked',this.checked?.length);
|
|
|
+ // console.log('loginBtn',this.loginBtn);
|
|
|
+ if(!this.checked||this.checked?.length<=0){
|
|
|
+ uni.showToast({
|
|
|
+ title:'请先同意使用条款!',
|
|
|
+ icon:'none'
|
|
|
+ })
|
|
|
+ }else if(this.loginBtn==false){
|
|
|
+ uni.showToast({
|
|
|
+ title:'登录中!',
|
|
|
+ icon:'none'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ wxLogin(e){
|
|
|
+ let serf = this
|
|
|
+ let userinfo = e.detail.userInfo
|
|
|
+ uni.login({
|
|
|
+ provider:'weixin',
|
|
|
+ success(res){
|
|
|
+ let code = res.code
|
|
|
+ let params = {
|
|
|
+ code:code,
|
|
|
+ sex:userinfo.gender,
|
|
|
+ headImgUrl:userinfo.avatarUrl,
|
|
|
+ nickname:userinfo.nickName
|
|
|
+ }
|
|
|
+ serf.$u.api.login(params).then(res=>{
|
|
|
+ serf.setLogin(res.retBody)
|
|
|
+ if(serf.backUrl == '' || !serf.backUrl){
|
|
|
+ uni.switchTab({
|
|
|
+ url: '/pages/userCenter/userCenter'
|
|
|
+ })
|
|
|
+ }else{
|
|
|
+ uni.navigateTo({
|
|
|
+ url:serf.backUrl
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }).catch(err=>{
|
|
|
+ console.log('login',err);
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="scss" scoped>
|
|
|
+.login-bg{
|
|
|
+ position: fixed;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
+.body {
|
|
|
+ background-color: #fff;
|
|
|
+ box-sizing: border-box;
|
|
|
+ text-align: center;
|
|
|
+ .logo-wrap {
|
|
|
+ padding-top: 248rpx;
|
|
|
+ img{
|
|
|
+ display: block;
|
|
|
+ margin: 0 auto;
|
|
|
+ }
|
|
|
+ .logo{
|
|
|
+ width: 306rpx;
|
|
|
+ height: 258rpx;
|
|
|
+ }
|
|
|
+ .sitename{
|
|
|
+ width: 460rpx;
|
|
|
+ height: 142rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+//
|
|
|
+
|
|
|
+.auth-btncard{
|
|
|
+ margin-top: 20px;
|
|
|
+ .btn-unok{
|
|
|
+ width: 45%;
|
|
|
+ float: left;
|
|
|
+ }
|
|
|
+ .btn-ok{
|
|
|
+ width: 45%;
|
|
|
+ float: left;
|
|
|
+ margin: 0;
|
|
|
+ padding: 0;
|
|
|
+ border: 0px solid transparent; //自定义边框
|
|
|
+ outline: none; //消除默认点击蓝色边框效果
|
|
|
+ u-button{
|
|
|
+ font-size: 16px;
|
|
|
+ margin: 0;
|
|
|
+ padding: 0;
|
|
|
+ // border: 0px solid transparent; //自定义边框
|
|
|
+ outline: none; //消除默认点击蓝色边框效果
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.auth-card{
|
|
|
+ text-align: center;
|
|
|
+ .avatar-img{
|
|
|
+ width: 150rpx;
|
|
|
+ height: 150rpx;
|
|
|
+ overflow: hidden;
|
|
|
+ border-radius: 100%;
|
|
|
+ margin-top: 30rpx;
|
|
|
+ }
|
|
|
+ .title{
|
|
|
+ font-size: 30rpx;
|
|
|
+ }
|
|
|
+ .content{
|
|
|
+ margin-top: 10rpx;
|
|
|
+ margin-bottom: 20rpx;
|
|
|
+ }
|
|
|
+}
|
|
|
+.avatar-wrapper{
|
|
|
+ width: 150rpx;
|
|
|
+ height: 100rpx;
|
|
|
+ color: #333 !important;
|
|
|
+ text-align: center !important;
|
|
|
+ border: none !important;
|
|
|
+ border-radius:0 !important;
|
|
|
+ background-color:transparent !important;
|
|
|
+}
|
|
|
+.avatar-wrapper::after {
|
|
|
+ border: none !important;
|
|
|
+}
|
|
|
+.avatar{
|
|
|
+ width: 100rpx;
|
|
|
+ height: 100rpx;
|
|
|
+ overflow: hidden;
|
|
|
+ border-radius: 100%;
|
|
|
+}
|
|
|
+
|
|
|
+.rule-wrap{
|
|
|
+ position: fixed;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 20px;
|
|
|
+ margin: 40rpx auto;
|
|
|
+ font-size: 24rpx;
|
|
|
+ line-height: 1.5;
|
|
|
+ .link{
|
|
|
+ white-space: nowrap;
|
|
|
+ color: #1677FF;
|
|
|
+ }
|
|
|
+}
|
|
|
+</style>
|
|
|
+
|