个人中心页面 重点 userInfo cardInfo addressList 等,第一次ajax获取,然后存vuex里面...

<template>
    <div>
        <scroller lock-x height="-1px">
            <div id="personalBox">
                <div class="userBox">
                    <flexbox class="back_set_title" :gutter="0">
                        <flexbox-item :span="6">
                            <div @click="backMall">
                                <icon slot="icon"  name="myBack" :scale="4"></icon>
                            </div>
                        </flexbox-item>
                        <flexbox-item :span="4">
                        </flexbox-item>
                        <flexbox-item :span="2">
                            <div @click="goToBindPhone()">
                                <icon slot="icon"  name="mySet" :scale="3"></icon>
                            </div>
                        </flexbox-item>
                    </flexbox>
                    <flexbox :gutter="0">
                        <flexbox-item :span="2">
                        </flexbox-item>
                        <flexbox-item :span="4">
                            <div>
                                <div class="wxHeadImg">
                                    <img :src="wxUserInfo.headimgurl" alt="">
                                </div>
                            </div>
                        </flexbox-item>
                        <flexbox-item :span="6">
                            <div>
                                <p class="font-color_white">{{wxUserInfo.phone}}</p>
                            </div>
                        </flexbox-item>
                    </flexbox>
                </div>
                <group>
                    <cell title="我的订单" value="查看全部订单" is-link @click.native="onItemClick(0)"></cell>
                </group>
                <div class="orderMsg">
                    <grid :cols="3">
                        <grid-item label="待付款"  @on-item-click="onItemClick(1)">
                            <icon slot="icon"  name="myPurse" :scale="3"></icon>
                        </grid-item>
                        <grid-item label="待取餐"  @on-item-click="onItemClick(2)">
                            <icon slot="icon"  name="myMeal" :scale="3"></icon>
                        </grid-item>
                        <grid-item label="待配送" @on-item-click="onItemClick(3)">
                            <icon slot="icon"  name="mySend" :scale="4"></icon>
                        </grid-item>
                    </grid>
                </div>
                <group>
                    <cell title="消费卡" is-link @click.native="accountManage">
                        <icon slot="icon"  name="cardPay" :scale="2" style="margin-top: 5px;"></icon>
                    </cell>
                </group>
                <group>
                    <cell title="地址管理" is-link @click.native="addressManage">
                        <icon slot="icon"  name="address" :scale="2"></icon>
                    </cell>
                </group>
            </div>
        </scroller>
    </div>
</template>

<script>
    import {XHeader,Flexbox,FlexboxItem,Cell,Group,Grid, GridItem,XButton,Scroller } from 'vux'
    import { mapGetters } from 'vuex'
    export default {
        components: {
            XHeader,Flexbox,FlexboxItem,Cell,Group, Grid, GridItem,XButton,Scroller
        },
        data () {
            return {
                phone:'',
                wxUserInfo:''
            }
        },
        computed:{
            ...mapGetters([
                "userInfo",
            ]),
        },
        created(){
            if(!this.userInfo){
                console.log(123)
                this.getUsenInfo()
            }else{
                this.wxUserInfo=this.userInfo
            }
        },
        methods:{
            getUsenInfo(){
                this.$http.get('/shop/api/get-user-info').then((response) => {
                    if(response.data.status){
                        this.wxUserInfo=response.data.data;
                        this.$store.commit('saveUserInfo',this.wxUserInfo);
                    }else{
                        this.$vux.toast.show({
                            text: response.data.message,
                            type:'cancel'
                        })
                    }
                }).catch((error)=>{
                    console.log(error)
                })
            },
            goToBindPhone(){
                if(_global.customerId){
                    return
                }
                this.$router.push({ path:'/binding'})
            },
            backMall(){
                this.$router.push({ path:'/'})
            },
            goToWait(){

            },
            onItemClick(index){
                this.$store.commit("saveItemIndex",index)
                this.$router.push({ path:'orderList'});
            },
            addressManage(){
                if(!_global.customerId){
                    this.$router.push({ path:'/binding'})
                    return
                }
                this.$router.push({ path:'addressList'});
            },
        },
    }
</script>
<style lang="less">
    #personalBox{
        .userBox{
            padding: 10px 10px 20px 10px;
            background: #F1633D;
            margin-bottom: 20px;
            .wxHeadImg{
                width: 80px;
                height: 80px;
                img{
                    width: 100%;
                    height: 100%;
                    border: 1px solid #F1633D;
                    border-radius: 50%;
                }
            }
            .font-color_white{
                color:white;
                font-weight: 600;
                font-size: 18px;
            }
        }
        .orderMsg{
            background: #fff;
        }
        .back_set_title{
            margin:0 10px;
        }
        .weui-cells{
            /*padding: 8px 0;*/
            font-size: 14px;
        }
    }
    .quit_login{
        position: fixed;
        z-index: 3;
        bottom: 0;
    }
</style>

 

转载于:https://www.cnblogs.com/MR-cui/p/8919657.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值