You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
192 lines
5.1 KiB
192 lines
5.1 KiB
<template>
|
|
<view class="content">
|
|
<uni-nav-bar left-icon="back" @clickLeft="back" statusBar fixed title="飞鸟快印"></uni-nav-bar>
|
|
<view class="flex-col group_5">
|
|
<view class="group_6">
|
|
<view class="section_3"><!--*--></view>
|
|
<view class="justify-center group_7">
|
|
<image src="/static/imgs/general/logo-icon.png" class="image_6" />
|
|
<text class="text_4">飞鸟快印</text>
|
|
</view>
|
|
</view>
|
|
<view class="flex-col group_8">
|
|
<text class="text_5">手机里的打印店</text>
|
|
<view class="justify-center">
|
|
<button class="avatar-wrapper" open-type="chooseAvatar" @chooseavatar="onChooseAvatar">
|
|
<image class="avatar" :src="avatarUrl"></image>
|
|
</button>
|
|
</view>
|
|
<view class="nick-form">
|
|
<view style="width: 100rpx">昵称:</view>
|
|
<input type="nickname" class="weui-input" placeholder="请输入昵称" v-model="nickname" />
|
|
</view>
|
|
<view class="flex-col items-center button" @tap="signIn"><text class="text_6">注册账号</text></view>
|
|
</view>
|
|
<view class="section_4"><!--*--></view>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import { go2, back } from '@/utils/hook.js'
|
|
import { changeUserInfo, uploadAvatar } from '@/apis/commonApi'
|
|
|
|
const defaultAvatarUrl = 'https://qncloud.oss-cn-shenzhen.aliyuncs.com/wukong-printer-wx/default-avatar-add.png'
|
|
export default {
|
|
data() {
|
|
return {
|
|
params: {},
|
|
target: '',
|
|
avatarUrl: defaultAvatarUrl,
|
|
nickname: ''
|
|
}
|
|
},
|
|
onLoad(options) {
|
|
this.target = options.target
|
|
this.params = JSON.parse(options.data || '{}')
|
|
},
|
|
methods: {
|
|
go2,
|
|
back,
|
|
signIn() {
|
|
if (this.avatarUrl == defaultAvatarUrl || !this.avatarUrl) {
|
|
uni.showToast({
|
|
title: '请选择头像',
|
|
icon: 'none'
|
|
})
|
|
return
|
|
}
|
|
if (!this.nickname || !this.nickname.trim()) {
|
|
uni.showToast({
|
|
title: '请输入昵称',
|
|
icon: 'none'
|
|
})
|
|
return
|
|
}
|
|
uploadAvatar(this.avatarUrl).then((res) => {
|
|
if (res) {
|
|
res = JSON.parse(res)
|
|
}
|
|
if (res.data) {
|
|
changeUserInfo({ avatar: res.data, nickname: this.nickname }).then(() => {
|
|
// 更新全局用户信息
|
|
let changeMap = [
|
|
{ key: 'avatar', value: res.data },
|
|
{ key: 'name', value: this.nickname }
|
|
]
|
|
this.$store.commit('changeUserInfo', changeMap)
|
|
this.nextPage()
|
|
})
|
|
}
|
|
})
|
|
},
|
|
onChooseAvatar(e) {
|
|
const { avatarUrl } = e.detail
|
|
this.avatarUrl = avatarUrl
|
|
},
|
|
nextPage() {
|
|
go2(this.target, this.params, true)
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.content {
|
|
width: 750rpx;
|
|
}
|
|
.group_5 {
|
|
padding: 42rpx 0 316rpx;
|
|
flex: 1 1 auto;
|
|
overflow-y: auto;
|
|
overflow-x: hidden;
|
|
.group_6 {
|
|
width: 750rpx;
|
|
.section_3 {
|
|
background-image: linear-gradient(149.4deg, #007aff26 0%, #007aff26 2.73%, #ffffff26 98.65%, #ffffff26 100%);
|
|
border-radius: 0 50% 50% 0;
|
|
width: 288rpx;
|
|
height: 288rpx;
|
|
position: absolute;
|
|
transform: translateX(-50%);
|
|
}
|
|
.group_7 {
|
|
margin-top: 90rpx;
|
|
width: 750rpx;
|
|
.image_6 {
|
|
margin: 10rpx 0 9rpx;
|
|
flex-shrink: 0;
|
|
width: 75rpx;
|
|
height: 75rpx;
|
|
}
|
|
.text_4 {
|
|
margin-left: 21rpx;
|
|
color: #000000;
|
|
font-size: 80rpx;
|
|
font-family: '.AppleSystemUIFont';
|
|
line-height: 94rpx;
|
|
}
|
|
}
|
|
}
|
|
.group_8 {
|
|
margin: 28rpx 0 0;
|
|
.text_5 {
|
|
align-self: center;
|
|
color: #000000;
|
|
font-size: 30rpx;
|
|
font-family: 'PingFangSC-Regular';
|
|
line-height: 42rpx;
|
|
letter-spacing: 34rpx;
|
|
margin-left: 34rpx;
|
|
}
|
|
.button {
|
|
padding: 23rpx 0 20rpx;
|
|
margin: 120rpx 32rpx 0;
|
|
background-color: #28c445;
|
|
border-radius: 44rpx;
|
|
.text_6 {
|
|
color: #ffffff;
|
|
font-size: 32rpx;
|
|
font-family: 'PingFangSC-Medium';
|
|
font-weight: 500;
|
|
line-height: 45rpx;
|
|
}
|
|
}
|
|
}
|
|
.section_4 {
|
|
margin-left: 562rpx;
|
|
margin-top: 282rpx;
|
|
align-self: flex-start;
|
|
background-image: linear-gradient(149.4deg, #007aff26 0%, #007aff26 2.73%, #ffffff26 98.65%, #ffffff26 100%);
|
|
border-radius: 50%;
|
|
width: 288rpx;
|
|
height: 288rpx;
|
|
}
|
|
}
|
|
.avatar-wrapper {
|
|
width: 150rpx;
|
|
height: 150rpx;
|
|
margin-top: 140rpx;
|
|
border-radius: 50%;
|
|
overflow: hidden;
|
|
padding: 0;
|
|
.avatar {
|
|
width: 150rpx;
|
|
height: 150rpx;
|
|
}
|
|
}
|
|
.weui-input {
|
|
width: 400rpx;
|
|
height: 80rpx;
|
|
}
|
|
.nick-form {
|
|
margin-top: 32rpx;
|
|
display: flex;
|
|
flex-direction: row;
|
|
align-items: center;
|
|
justify-content: center;
|
|
width: 750rpx;
|
|
border-top: 1px solid #e5e5e5;
|
|
border-bottom: 1px solid #e5e5e5;
|
|
}
|
|
</style>
|