From 03426aefbf891aa1fe3064d4301d17d5de869114 Mon Sep 17 00:00:00 2001
From: 曹睿 <360930172@qq.com>
Date: 星期二, 22 四月 2025 17:20:20 +0800
Subject: [PATCH] fix: 修复用户信息无法及时响应
---
src/pages/production/list/index.vue | 7 +++----
src/store/modules/user.ts | 3 ++-
src/components/worker-calling-card/index.vue | 21 ++++-----------------
src/pages/production/index.vue | 22 ++++++++++++++++------
4 files changed, 25 insertions(+), 28 deletions(-)
diff --git a/src/components/worker-calling-card/index.vue b/src/components/worker-calling-card/index.vue
index 8a0ee70..3ea106d 100644
--- a/src/components/worker-calling-card/index.vue
+++ b/src/components/worker-calling-card/index.vue
@@ -3,12 +3,12 @@
<template #title>
<view>
<text class="font-medium">
- {{ user.nickName }}
- <text class="text-[#0D867F] text-xs">路{{ user.roleName }}</text>
+ {{ userInfo?.nickName }}
+ <text class="text-[#0D867F] text-xs">路{{ userInfo?.roles[0].roleName }}</text>
</text>
</view>
<view>
- <text class="font-medium text-[#3D3D3D] text-sm">宸ュ彿: {{ user.userName }}</text>
+ <text class="font-medium text-[#3D3D3D] text-sm">宸ュ彿: {{ userInfo?.userName }}</text>
</view>
</template>
<view class="mt-2">
@@ -18,21 +18,8 @@
</template>
<script setup lang="ts">
import { useUserStore } from "@/store/modules/user";
-import { nextTick } from "vue";
const userStore = useUserStore();
-const userInfo: any = computed(() => userStore.userInfo);
-const user = reactive({
- nickName: "",
- userName: "",
- roleName: "",
-});
-
-onLoad(() => {
- nextTick();
- user.nickName = userInfo.value.user?.nickName;
- user.userName = userInfo.value.user?.userName;
- user.roleName = userInfo.value.user?.roles[0].roleName;
-});
+const userInfo = computed(() => userStore.userInfo);
</script>
<style lang="scss" scoped>
.calling_card {
diff --git a/src/pages/production/index.vue b/src/pages/production/index.vue
index 16dc0c3..a55a50a 100644
--- a/src/pages/production/index.vue
+++ b/src/pages/production/index.vue
@@ -12,10 +12,20 @@
</wd-row>
<wd-tabs v-model="tab" auto-line-width>
<wd-tab :title="`寰呯敓浜�(${total.wait})`" class="tab_bg">
- <ProductList :api="ManageApi.getProductList" state="寰呭畬鎴�" @ok="changeWait" />
+ <ProductList
+ ref="waitRef"
+ :api="ManageApi.getProductList"
+ state="寰呭畬鎴�"
+ @ok="changeWait"
+ />
</wd-tab>
<wd-tab :title="`宸茬敓浜�(${total.already})`" class="tab_bg">
- <ProductList :api="ManageApi.getProductList" state="宸插畬鎴�" @ok="changeAlready" />
+ <ProductList
+ ref="alreadyRef"
+ :api="ManageApi.getProductList"
+ state="宸插畬鎴�"
+ @ok="changeAlready"
+ />
</wd-tab>
</wd-tabs>
</view>
@@ -23,9 +33,11 @@
<script lang="ts" setup>
import ManageApi from "@/api/product/manage";
-import { onMounted, ref } from "vue";
+import { ref } from "vue";
import ProductList from "./list/index.vue";
+const waitRef = ref();
+const alreadyRef = ref();
const tab = ref<number>(0);
const total = reactive({
wait: 0,
@@ -39,8 +51,6 @@
const changeAlready = (num: number) => {
total.already = num;
};
-
-onMounted(() => {});
</script>
<style lang="scss" scoped>
@@ -48,12 +58,12 @@
border-radius: unset;
}
.scan_box {
- padding: 6px;
display: flex;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
+ padding: 6px;
background: #fff;
}
::v-deep .wd-tabs__line {
diff --git a/src/pages/production/list/index.vue b/src/pages/production/list/index.vue
index 2fb4362..eb7adaa 100644
--- a/src/pages/production/list/index.vue
+++ b/src/pages/production/list/index.vue
@@ -25,7 +25,8 @@
import ProductCard from "@/components/product_card/index.vue";
import { useUserStore } from "@/store/modules/user";
import zPaging from "@/components/z-paging/z-paging.vue";
-
+const userStore = useUserStore();
+const userInfo: any = computed(() => userStore.userInfo);
const pagingRef = ref();
const props = defineProps({
api: {
@@ -54,10 +55,8 @@
};
const getList = async (pageNo: number, pageSize: number) => {
- const userStore = useUserStore();
- const userInfo: any = computed(() => userStore.userInfo);
const { code, data } = await props.api({
- userName: userInfo.value.user?.userName,
+ userName: userInfo.value.userName,
state: props.state,
current: pageNo,
size: pageSize,
diff --git a/src/store/modules/user.ts b/src/store/modules/user.ts
index b3dba33..335e2d0 100644
--- a/src/store/modules/user.ts
+++ b/src/store/modules/user.ts
@@ -41,7 +41,8 @@
return new Promise((resolve, reject) => {
UserAPI.getUserInfo()
.then((data: any) => {
- setUserInfo(data.data);
+ console.log("鑾峰彇鐢ㄦ埛淇℃伅鎴愬姛", data.data.user);
+ setUserInfo(data.data.user);
userInfo.value = data.data.user;
resolve(data.data);
})
--
Gitblit v1.9.3