Răsfoiți Sursa

fix: Tracking筛选项输入框值不会被清除bug

Jack Zhou 4 zile în urmă
părinte
comite
b3e8d6c8e9

+ 3 - 0
src/router/index.ts

@@ -1,6 +1,7 @@
 import { createRouter, createWebHistory } from 'vue-router'
 import { useUserStore } from '@/stores/modules/user'
 import { useBreadCrumb } from '@/stores/modules/breadCrumb'
+import { useHeaderSearch } from '@/stores/modules/headerSearch'
 
 const router = createRouter({
   history: createWebHistory(`${import.meta.env.VITE_BASE_URL}`),
@@ -233,10 +234,12 @@ const router = createRouter({
 router.beforeEach(async (to, from, next) => {
   useBreadCrumb().setRouteList(to)
   const userStore = useUserStore()
+  const headerSearchStore = useHeaderSearch()
   // 如果手动跳转登录页,清除登录信息
   if (to.path === '/login') {
     if (userStore.isLogin) {
       await userStore.logout()
+      headerSearchStore.clearSearchData()
     }
     sessionStorage.removeItem('trackingTablePageInfo')
     sessionStorage.removeItem('bookingTablePageInfo')

+ 6 - 17
src/views/Tracking/src/components/TrackingTable/src/TrackingTable.vue

@@ -11,8 +11,10 @@ import { useVisitedRowState } from '@/stores/modules/visitedRow'
 import { formatTimezone, formatNumber } from '@/utils/tools'
 import { useTrackingDownloadData } from '@/stores/modules/trackingDownloadData'
 import { useFiltersStore } from '@/stores/modules/filtersList'
+import { useHeaderSearch } from '@/stores/modules/headerSearch'
 
 const filtersStore = useFiltersStore()
+const headerSearchStore = useHeaderSearch()
 
 const visitedRowState = useVisitedRowState()
 const themeStore = useThemeStore()
@@ -156,22 +158,6 @@ const assignTableData = (data: any) => {
   }, 1000)
 }
 
-const getSharedTableData = () => {
-  const trackingData = JSON.parse(localStorage.getItem('searchData'))?.trackingData
-  if (trackingData) {
-    pageInfo.value.pageSize = Number(trackingData.ps)
-    sessionStorage.setItem('trackingTablePageInfo', JSON.stringify(pageInfo.value))
-    assignTableData(trackingData)
-    selectedNumber.value = 0
-    selectedTableData.value = []
-    nextTick(() => {
-      tableRef.value && autoWidth(trackingTable.value, tableRef.value)
-    })
-    return true
-  }
-  return false
-}
-
 // 切换分页时重新获取表格数据
 const getTableData = async (isPageChange?: boolean) => {
   // 保存页长以及当前页码
@@ -574,9 +560,12 @@ const SubscribeShipments = (row: any) => {
     })
 }
 
+onUnmounted(() => {
+  headerSearchStore.clearSearchData()
+})
+
 defineExpose({
   searchTableData,
-  getSharedTableData,
   getLoadingData,
   pageInfo
 })