<template>
    <view class="">
        <!-- 使用标题栏 -->
        <status-nav :statusBackw="true" :statusTitle="true" :title-val="'个人资料'" :tabcolor="'#ffffff'"></status-nav>
        <view class="margin-zy20 bacb radius10" :style="{marginTop:(statusHNH+10)+'px'}">
            <view @tap="chooseVal(index)" class="disba fon28 margin-zy20 borbot padding-sx20" v-for="(item,index) in dataArr" :key="index">
                <view class="" style="color: #292929;">{{item.title}}</view>
                <view class="disac">
                    <view v-if="item.content!=''" style="color: #a6a6a6;">{{item.content}}</view>
                    <image v-if="item.imgSrc!=''" style="width: 96rpx;height: 96rpx;border-radius: 100%;margin-left: 20rpx;" :src="item.imgSrc" mode="aspectFill"></image>
                    <image class="margin-z10 youj" src="/static/img/my/youj.png" mode=""></image>
                </view>
            </view>
        </view>
        <view class="margin20">
            <!-- <button class="fon32 color33" style="background-color: #FFFFFF;border: none;position: inherit;height: 120rpx;line-height: 120rpx;">退出登录</button> -->
			<navigator @tap="clearAll" class="fon32 color33" target="miniProgram" open-type="exit"style="background-color: #FFFFFF;height: 120rpx;line-height: 120rpx;text-align: center;border-radius: 10rpx;"> 退出登录</navigator>
        </view>
		<!-- 弹框输入 -->
		<view v-if="isInput" class="posiall disbcac" style="background-color: rgba(0,0,0,.5);z-index: 100;">
			<view :class="isClose ? '':'bounceOut'" class="animated bounceIn" style="background-color: #FFFFFF;width: 70%;padding: 20rpx;border-radius: 10rpx;">
				<view style="padding-bottom: 20rpx;font-size: 28rpx;">修改:{{xtitle}}</view>
				<input @input="inputEv" :focus="isfocus" :type="inputType" :value="inputVal" style="border: 1rpx solid #dddddd;border-radius: 10rpx;padding: 10rpx 20rpx;" />
				<view style="margin-top: 20rpx;display: flex;justify-content: space-between;align-items: center;font-size: 28rpx;">
					<view @tap="closeT" class="color9 width100" style="text-align: center;">取消</view>
					<view @tap="submit" class="colorf78 width100"style="text-align: center;">确认</view>
				</view>
			</view>
		</view>
    </view>
</template>

<script>
    export default {
        data() {
            return {
                dataArr:[
                    {title:'昵称:',content:'',imgSrc:'/static/img/my/myhead.png'},
                    {title:'真实姓名:',content:'',imgSrc:''},
                    {title:'手机号码:',content:'',imgSrc:''},
                ],
				inputVal:'',
				isClose:true,
				isInput:false,
				isfocus:true,
				xtitle:'',
				field:'',
				inputType:'text',
				inputIndex:'',
				headImg:'',
				statusHNH:uni.getStorageSync('statusHNH')
            }
        },
		onLoad() {
			let obj = uni.getStorageSync('userInfoObj')
			this.dataArr[0].content = obj.nickname
			this.dataArr[0].imgSrc = obj.headimgurl
			if(obj.realname==null){
				this.dataArr[1].content = '未知'
			} else {
				this.dataArr[1].content = obj.realname
			}
			if(obj.mobile==''){
				this.dataArr[2].content = '未知'
			} else {
				this.dataArr[2].content = obj.mobile
				this.zanPhone = obj.mobile
			}
		},
		onShow(){
			this.$toolAll.tools.guoq()
		},
        methods: {
			inputEv(e){
				this.inputVal = e.target.value
			},
			chooseVal(index){
				if(index!=0) this.isInput = true
				this.inputIndex = index
				this.xtitle = this.dataArr[index].content
				if(index==0) {
					this.field = 'headimgurl'
					uni.chooseImage({
					    count:1,
					    sizeType:['original'],
					    success: (res) => {
							this.dataArr[0].imgSrc = res.tempFilePaths[0]
							this.$requst.upload('file/upload/image',{file: this.dataArr[0].imgSrc}).then(res=>{
								this.headImg = res.data.src
								this.submit()//调用提交事件
							},error=>{})
					    },
					    complete: (res) => {
					        // console.log(res);
					    }
					})
				}
				if(index==1) {
					this.field = 'realname'
					this.inputType = 'text'
				}
				if(index==2) {
					this.field = 'mobile'
					this.inputType = 'number'
				}
			},
			closeT(){
				this.isClose = false
				let ya = this
				setTimeout(function(){
					ya.isInput = false
					ya.isClose = true
				},1000)
			},
			submit(){//用户信息提交事件
				let ya = this
				if(this.inputIndex==2 && this.$toolAll.tools.isPhone(this.inputVal)){
					this.$toolAll.tools.showToast('请输入正确的手机号')
				} else {
					if(this.headImg!='') this.inputVal = this.headImg
					this.$requst.post('user/edit-info',{field:this.field,value:this.inputVal}).then(res=>{
						// console.log(res);
						if(res.code==0){
							let newObj = uni.getStorageSync('params')
							if(this.inputIndex==0) this.$toolAll.tools.showToast('头像修改成功')
							let newName = ''
							if(this.inputIndex==1) {
								this.$toolAll.tools.showToast('姓名修改成功')
								newName = this.inputVal
							} else {
								newName = newObj.nickname
							}
							if(this.inputIndex==2) this.$toolAll.tools.showToast('号码修改成功')
							this.isClose = false
							let objInfo = {
								avatar:this.$http + this.headImg,
								city:newObj.city,
								code:'',
								country:newObj.country,
								gender:newObj.gender,
								invite_code:newObj.invite_code,
								language:newObj.language,
								nickname:newName,
								province:newObj.province
							}
							uni.setStorageSync('params',objInfo)
							if(this.headImg=='') this.dataArr[this.inputIndex].content = this.inputVal
							setTimeout(function(){
								ya.isInput = false
								ya.isClose = true
								ya.inputVal = ya.headImg =''
							},1000)
						}
					},error=>{})
				}
			},
			clearAll(){//清除所以缓存
				// uni.clearStorageSync()
				uni.removeStorageSync('token')
			}
        }
    }
</script>

<style>

</style>