首页 > 其他分享 >用户模块

用户模块

时间:2024-01-26 14:24:54浏览次数:19  
标签:模块 icon color 用户 height background font size

1

 

// src/pages/my/my.vue

<script setup lang="ts">
// 获取屏幕边界到安全区域距离
const { safeAreaInsets } = uni.getSystemInfoSync()
// 订单选项
const orderTypes = [
  { type: 1, text: '待付款', icon: 'icon-currency' },
  { type: 2, text: '待发货', icon: 'icon-gift' },
  { type: 3, text: '待收货', icon: 'icon-check' },
  { type: 4, text: '待评价', icon: 'icon-comment' },
]
</script>

<template>
  <scroll-view class="viewport" scroll-y enable-back-to-top>
    <!-- 个人资料 -->
    <view class="profile" :style="{ paddingTop: safeAreaInsets!.top + 'px' }">
      <!-- 情况1:已登录 -->
      <view class="overview" v-if="false">
        <navigator url="/pagesMember/profile/profile" hover-class="none">
          <image
            class="avatar"
            mode="aspectFill"
            src="https://pcapi-xiaotuxian-front-devtest.itheima.net/miniapp/uploads/avatar_3.jpg"
          ></image>
        </navigator>
        <view class="meta">
          <view class="nickname"> 黑马程序员 </view>
          <navigator class="extra" url="/pagesMember/profile/profile" hover-class="none">
            <text class="update">更新头像昵称</text>
          </navigator>
        </view>
      </view>
      <!-- 情况2:未登录 -->
      <view class="overview" v-else>
        <navigator url="/pages/login/login" hover-class="none">
          <image
            class="avatar gray"
            mode="aspectFill"
            src="http://yjy-xiaotuxian-dev.oss-cn-beijing.aliyuncs.com/picture/2021-04-06/db628d42-88a7-46e7-abb8-659448c33081.png"
          ></image>
        </navigator>
        <view class="meta">
          <navigator url="/pages/login/login" hover-class="none" class="nickname">
            未登录
          </navigator>
          <view class="extra">
            <text class="tips">点击登录账号</text>
          </view>
        </view>
      </view>
      <navigator class="settings" url="/pagesMember/settings/settings" hover-class="none">
        设置
      </navigator>
    </view>
    <!-- 我的订单 -->
    <view class="orders">
      <view class="title">
        我的订单
        <navigator class="navigator" url="/pagesOrder/list/list?type=0" hover-class="none">
          查看全部订单<text class="icon-right"></text>
        </navigator>
      </view>
      <view class="section">
        <!-- 订单 -->
        <navigator
          v-for="item in orderTypes"
          :key="item.type"
          :class="item.icon"
          :url="`/pagesOrder/list/list?type=${item.type}`"
          class="navigator"
          hover-class="none"
        >
          {{ item.text }}
        </navigator>
        <!-- 客服 -->
        <button class="contact icon-handset" open-type="contact">售后</button>
      </view>
    </view>
    <!-- 猜你喜欢 -->
    <view class="guess">
      <XtxGuess ref="guessRef" />
    </view>
  </scroll-view>
</template>

<style lang="scss">
page {
  height: 100%;
  overflow: hidden;
  background-color: #f7f7f8;
}

.viewport {
  height: 100%;
  background-repeat: no-repeat;
  background-image: url(https://pcapi-xiaotuxian-front-devtest.itheima.net/miniapp/images/center_bg.png);
  background-size: 100% auto;
}

/* 用户信息 */
.profile {
  margin-top: 20rpx;
  position: relative;

  .overview {
    display: flex;
    height: 120rpx;
    padding: 0 36rpx;
    color: #fff;
  }

  .avatar {
    width: 120rpx;
    height: 120rpx;
    border-radius: 50%;
    background-color: #eee;
  }

  .gray {
    filter: grayscale(100%);
  }

  .meta {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    line-height: 30rpx;
    padding: 16rpx 0;
    margin-left: 20rpx;
  }

  .nickname {
    max-width: 350rpx;
    margin-bottom: 16rpx;
    font-size: 30rpx;

    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .extra {
    display: flex;
    font-size: 20rpx;
  }

  .tips {
    font-size: 22rpx;
  }

  .update {
    padding: 3rpx 10rpx 1rpx;
    color: rgba(255, 255, 255, 0.8);
    border: 1rpx solid rgba(255, 255, 255, 0.8);
    margin-right: 10rpx;
    border-radius: 30rpx;
  }

  .settings {
    position: absolute;
    bottom: 0;
    right: 40rpx;
    font-size: 30rpx;
    color: #fff;
  }
}

/* 我的订单 */
.orders {
  position: relative;
  z-index: 99;
  padding: 30rpx;
  margin: 50rpx 20rpx 0;
  background-color: #fff;
  border-radius: 10rpx;
  box-shadow: 0 4rpx 6rpx rgba(240, 240, 240, 0.6);

  .title {
    height: 40rpx;
    line-height: 40rpx;
    font-size: 28rpx;
    color: #1e1e1e;

    .navigator {
      font-size: 24rpx;
      color: #939393;
      float: right;
    }
  }

  .section {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 40rpx 20rpx 10rpx;
    .navigator,
    .contact {
      text-align: center;
      font-size: 24rpx;
      color: #333;
      &::before {
        display: block;
        font-size: 60rpx;
        color: #ff9545;
      }
    }
    .contact {
      padding: 0;
      margin: 0;
      border: 0;
      background-color: transparent;
      line-height: inherit;
    }
  }
}

/* 猜你喜欢 */
.guess {
  background-color: #f7f7f8;
  margin-top: 20rpx;
}
</style>

看一下现在的效果

 

标签:模块,icon,color,用户,height,background,font,size
From: https://www.cnblogs.com/aixin52129211/p/17989212

相关文章

  • 登录模块--小程序快捷登录
      静态结构//src/pages/login/login.vue<scriptsetuplang="ts">//</script><template><viewclass="viewport"><viewclass="logo"><imagesrc="https://pcapi-xiaotux......
  • 安卓之用户数据安全现状以及相关技术优劣分析
    一、引言随着智能手机的普及,安卓平台已成为全球最大的移动操作系统之一。用户数据安全在安卓平台上变得日益重要,因为个人信息、金融交易和企业数据等都存储和传输于这些设备之中。本文将分析安卓平台上用户数据安全的现状,探讨保障数据安全的技术及其优劣,并讨论不同应用场景下的实践......
  • 基于djangoadmin开发,如何新用户自动创建token
    可以使用Python的secrets模块来生成一个包含大写字母和数字的32位token。以下是一个简单的例子:importsecretsimportstringdefgenerate_token():alphabet=string.ascii_uppercase+string.digitstoken=''.join(secrets.choice(alphabet)for_inrange(32))......
  • 华为云CCE Turbo:基于eBPF的用户自定义多粒度网络监控能力
    本文分享自华为云社区《华为云CCETurbo:基于eBPF的用户自定义多粒度网络监控能力》,作者:云容器大未来。基于eBPF的容器监控的兴起容器具有极致弹性、标准运行时、易于部署等优点,越来越多的客户选择使用容器来部署自己的服务,随着容器规模越来越大,容器间网络交互......
  • Vue中JSON文件神奇应用fetch、axios异步加载与模块导入全指南
     在Vue中使用JSON文件有多种方式,包括使用fetch方法加载JSON文件、使用axios库加载JSON文件,以及将JSON文件导入为模块。以下是详细描述和相应的示例代码:1.使用fetch方法加载JSON文件:步骤:创建一个JSON文件,例如 data.json://data.json{"name":"John","age":......
  • 在Rapsberry Pi OS上设置文件夹被多用户共享
    先设置umask为0002全部用户都设置为0002:vi/etc/profile.d/set-umask-for-all-users.sh输入002 如果只是单一用户,vi ~/.bashrc添加:umask002详细介绍看这里:https://www.cyberciti.biz/tips/understanding-linux-unix-umask-value-usage.html 一定要设置成002,这一步......
  • djangoadmin如何实现用户注册或新增后自动分配到某个组
    默认后台设置多个组,当后台新增或通过前台注册新用户后,自动分配到普通用户组以获取对应的权限,方便管理。大概意思就是这样:要实现在DjangoAdmin开发中,将新增用户或新注册的用户自动分配到某个组中,可以使用信号(signal)来完成。在对应的app下新建一个文件如signal.py:fromdjango......
  • 新版本的 Jenkins 2.388的权限修改设置Jenkins为root用户启动---亲测好用OK
    摘自:https://www.cnblogs.com/zpzp/p/17135020.html 最新版本的Jenkins修改/etc/sysconfig/jenkins中的JENKINS_USER=root不会再生效,需要按照以下配置进行操作 vim/usr/lib/systemd/system/jenkins.service重新加载和重启systemctldaemon-reloadsystemctlresta......
  • 【技术探讨】用户使用其他厂家433MHz无线模块时,购买样品OK,小批量100个就会出现偶尔无
        许多用户使用其他厂家的433M透传无线模块反馈这样的问题:前期购买几个样品测试,在无线信号覆盖半径内,收发包测试都很稳定,但是小批量购买100个模块收发就会出现无法收发的情况。这是什么原因呢?    首先科普一下,无线电波,在同一个信道同一时刻只允许一个节点发射行......
  • BOSHIDA DC电源模块的未来发展趋势
    BOSHIDADC电源模块的未来发展趋势未来DC电源模块的发展趋势可以预测如下: 1.高效能:随着绿色能源的需求增长,DC电源模块将更加注重高效能的设计,以减少能源消耗,并提高整体系统的能源利用率。2.高稳定性:DC电源模块在供电过程中需要保持稳定的电压和电流输出,未来的发展趋势将更......