From 922be295d3d1c602e371c60a2b79f977d710e895 Mon Sep 17 00:00:00 2001
From: 张含笑 <zhx18749296735@163.com>
Date: Thu, 23 Oct 2025 11:41:15 +0800
Subject: [PATCH] feat:我的页面
---
src/pages/user/index.vue | 26 +++++---
src/subPackages/workDetail/index.vue | 5 +
src/pages/work/index.vue | 79 ++++++++++++++++----------
src/subPackages/userDetail/password/index.vue | 17 ++++-
src/subPackages/userDetail/infos/index.vue | 23 +++----
5 files changed, 91 insertions(+), 59 deletions(-)
diff --git a/src/pages/user/index.vue b/src/pages/user/index.vue
index b98003c..4fb7cff 100644
--- a/src/pages/user/index.vue
+++ b/src/pages/user/index.vue
@@ -1,7 +1,7 @@
<!-- 我的 -->
<template>
<view class="page-wrap">
- <u-navbar title="" placeholder left-icon="" right-icon="camera-fill" />
+
<view class="flex items-center pb-30rpx pl-30rpx pr-20rpx">
<view class="mr-20rpx">
<u-avatar :src="userStore?.userInfo?.avatar" size="70" />
@@ -32,6 +32,7 @@
<view class="mt-20rpx">
<div class="goOutStyle" @click="logOut">退出登录</div>
</view>
+ <div class="bottomLogo"><img src="/src/static/images/user/logo1.svg" alt="" /></div>
</view>
</template>
@@ -92,20 +93,16 @@
// 登录鉴权,微信小程序端点击tabbar的底层逻辑不触发uni.switchTab,需要在页面onShow生命周期中校验权限
onShow(async () => {
getDeviceRegion()
- // window.addEventListener('message', (event) => {
- // console.log('message')
- // })
- // setInterval(() => {
- // sWebViewRef.value.evalJs(`x_sun('${test.value}')`)
- // }, 2000)
+
});
</script>
<style scoped lang="scss">
.page-wrap {
width: 100%;
- height: 298px;
- background: url('/src/static/images/user/userBg.svg') no-repeat center;
- background-size: 100% 100%;
+ height: 100%;
+ background: url('/src/static/images/user/allBg.svg') no-repeat center center;
+ background-size: cover;
+ padding-top: 44px;
}
.userName {
@@ -134,7 +131,14 @@
width: 100px;
height: 40px;
}
-
+ .bottomLogo {
+ position: absolute;
+ bottom: 25px;
+ left: 0;
+ right: 0;
+ margin: 0 auto;
+ text-align: center;
+ }
.goOutStyle {
width: 295px;
height: 38px;
diff --git a/src/pages/work/index.vue b/src/pages/work/index.vue
index 031f261..2e9f6ca 100644
--- a/src/pages/work/index.vue
+++ b/src/pages/work/index.vue
@@ -1,49 +1,66 @@
<template>
<view class="flex flex-col eventTickets">
- <WebViewPlus v-if="isApp" ref="sWebViewRef" :src="`${viewUrl}`" @webMessage="onPostMessage"/>
+ <WebViewPlus v-if="isApp" ref="sWebViewRef" :src="`${viewUrl}`" @webMessage="onPostMessage" />
</view>
</template>
<script setup>
- import {getWebViewUrl} from "@/utils/index.js";
-import WebViewPlus from "@/components/WebViewPlus.vue";
- import {useTabAddButton} from "@/hooks/index.js";
-const sWebViewRef = ref(null);
-const viewUrl = getWebViewUrl('/work', {})
-function onPostMessage(data) {
- if(data.type==='workid'){
- uni.navigateTo({
- url: `/subPackages/workDetail/index?eventNum=${data.eventNum}`
- });
- }else if(data.type === 'bigImage'){
- uni.navigateTo({
- url: `/subPackages/workDetail/photoMagnify/index?eventNum=${data.eventNum}`
- });
- }
+ import {
+ getWebViewUrl
+ } from "@/utils/index.js";
+ import WebViewPlus from "@/components/WebViewPlus.vue";
+ import {
+ useTabAddButton
+ } from "@/hooks/index.js";
+ const sWebViewRef = ref(null);
+ const viewUrl = getWebViewUrl('/work', {})
-}
+ function onPostMessage(data) {
+
+ if (data.type === 'jumpMapNav') {
+ uni.navigateTo({
+ url: `/subPackages/workDetail/mapWork/index?currentItem=${data.eventNum}`
+ });
+
+ } else if (data.type === 'workid') {
+ uni.navigateTo({
+ url: `/subPackages/workDetail/index?eventNum=${data.eventNum}`
+ });
+ } else if (data.type === 'bigImage') {
+ uni.navigateTo({
+ url: `/subPackages/workDetail/photoMagnify/index?eventNum=${data.eventNum}`
+ });
+
+ }
+
+ }
const isApp = ref(false)
onShow(() => {
- uni.setTabBarItem({
- index: 2, // Tab 的索引(从0开始)
- // text: '新建工单',
- visible: true,
- "pagePath": "subPackages/workDetail/addWork/index"
- });
- uni.setTabBarItem({
- index: 3, // Tab
- visible: false,
- });
- isApp.value = true
+ uni.setTabBarItem({
+ index: 2, // Tab 的索引(从0开始)
+ // text: '新建工单',
+ visible: true,
+ "pagePath": "subPackages/workDetail/addWork/index"
+ });
+ uni.setTabBarItem({
+ index: 3, // Tab
+ visible: false,
+ });
+ isApp.value = true
});
onHide(() => {
- isApp.value = false
+ isApp.value = false
});
</script>
<style scoped lang="scss">
-
-</style>
+ .eventTickets {
+ width: 100%;
+ height: 100%;
+ background: url('/src/static/images/user/allBg.svg') no-repeat center center;
+ background-size: cover;
+ }
+</style>
\ No newline at end of file
diff --git a/src/subPackages/userDetail/infos/index.vue b/src/subPackages/userDetail/infos/index.vue
index 4f9655f..cf8b351 100644
--- a/src/subPackages/userDetail/infos/index.vue
+++ b/src/subPackages/userDetail/infos/index.vue
@@ -25,8 +25,8 @@
</div>
</view>
<view class="btngroup">
- <u-button color="#AEAEAE" round @click="reset">重置</u-button>
- <u-button color="#1D6FE9" round @click="submit">提交</u-button>
+ <u-button color="#AEAEAE" class="custom-style" shape="circle" @click="reset">重置</u-button>
+ <u-button color="#1D6FE9" class="custom-style" shape="circle" @click="submit">提交</u-button>
</view>
</view>
</template>
@@ -124,17 +124,13 @@
<style lang="scss" scoped>
.container {
-
- width: 100%;
- // min-height: 100vh;
+ width: 100%;
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
-
background: url('/src/static/images/user/allBg.svg') no-repeat center center;
background-size: cover;
-
background-attachment: fixed;
}
@@ -147,13 +143,10 @@
.detailBox {
width: 351px;
-
min-height: 215px;
background: #FFFFFF;
border-radius: 6px;
-
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
-
.orderRow {
display: flex;
justify-content: space-between;
@@ -162,7 +155,6 @@
border-bottom: 1px solid #f5f5f5;
color: #7b7b7b;
padding: 0 12px;
-
.rowTitle {
font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400;
@@ -170,7 +162,6 @@
color: #222324;
white-space: nowrap;
}
-
::v-deep .u-input {
border: none !important;
background: transparent !important;
@@ -191,4 +182,12 @@
display: flex;
margin-top: 120px;
}
+ .u-button:first-child{
+ margin-right: 15px;
+ }
+
+ .custom-style {
+ width: 138px;
+ height: 38px;
+ }
</style>
\ No newline at end of file
diff --git a/src/subPackages/userDetail/password/index.vue b/src/subPackages/userDetail/password/index.vue
index 0dc6d3b..4c17598 100644
--- a/src/subPackages/userDetail/password/index.vue
+++ b/src/subPackages/userDetail/password/index.vue
@@ -20,8 +20,8 @@
</div>
</view>
<view class="btngroup">
- <u-button color="#AEAEAE" round @click="reset">重置</u-button>
- <u-button color="#1D6FE9" round @click="submit">提交</u-button>
+ <u-button color="#AEAEAE" class="custom-style" shape="circle" @click="reset">重置</u-button>
+ <u-button color="#1D6FE9" class="custom-style" shape="circle" @click="submit">提交</u-button>
</view>
</view>
</template>
@@ -91,7 +91,7 @@
.container {
width: 100%;
- // min-height: 100vh;
+
height: 100%;
display: flex;
flex-direction: column;
@@ -101,11 +101,12 @@
background-size: cover;
background-attachment: fixed;
- padding-top: 20px;
+
}
.detailBox {
+ margin-top: 20px;
width: 351px;
min-height: 163px;
@@ -151,4 +152,12 @@
display: flex;
margin-top: 120px;
}
+ .u-button:first-child{
+ margin-right: 15px;
+ }
+
+ .custom-style {
+ width: 138px;
+ height: 38px;
+ }
</style>
\ No newline at end of file
diff --git a/src/subPackages/workDetail/index.vue b/src/subPackages/workDetail/index.vue
index 0fbca34..2aef520 100644
--- a/src/subPackages/workDetail/index.vue
+++ b/src/subPackages/workDetail/index.vue
@@ -37,7 +37,10 @@
<style lang="scss" scoped>
.workDetailContainer {
padding: 0 10px;
-
+width: 100%;
+ height: 100%;
+ background: url('/src/static/images/user/allBg.svg') no-repeat center center;
+ background-size: cover;
}
--
Gitblit v1.9.3