diff --git a/nkebao/src/components/ProtectedRoute.tsx b/nkebao/src/components/ProtectedRoute.tsx index 569834b9..8491882d 100644 --- a/nkebao/src/components/ProtectedRoute.tsx +++ b/nkebao/src/components/ProtectedRoute.tsx @@ -1,6 +1,6 @@ import React, { useEffect } from 'react'; import { useNavigate, useLocation } from 'react-router-dom'; -import { useAuth } from '../contexts/AuthContext'; +import { useAuth } from '@/contexts/AuthContext'; // 不需要登录的公共页面路径 const PUBLIC_PATHS = [ diff --git a/nkebao/src/contexts/AuthContext.tsx b/nkebao/src/contexts/AuthContext.tsx index bad49d5b..b0f6da91 100644 --- a/nkebao/src/contexts/AuthContext.tsx +++ b/nkebao/src/contexts/AuthContext.tsx @@ -1,6 +1,6 @@ -import React, { createContext, useContext, useEffect, useState, ReactNode } from 'react'; +import React, { createContext, useContext, useState, useEffect, ReactNode } from 'react'; import { useNavigate } from 'react-router-dom'; -import { validateToken, refreshAuthToken } from '../api'; +import { validateToken, refreshAuthToken } from '@/api'; // 安全的localStorage访问方法 const safeLocalStorage = { diff --git a/nkebao/src/hooks/useAuthGuard.ts b/nkebao/src/hooks/useAuthGuard.ts index 881e5190..1d74456e 100644 --- a/nkebao/src/hooks/useAuthGuard.ts +++ b/nkebao/src/hooks/useAuthGuard.ts @@ -1,6 +1,6 @@ import { useEffect } from 'react'; import { useNavigate, useLocation } from 'react-router-dom'; -import { useAuth } from '../contexts/AuthContext'; +import { useAuth } from '@/contexts/AuthContext'; // 不需要登录的公共页面路径 const PUBLIC_PATHS = [ diff --git a/nkebao/src/pages/devices/DeviceDetail.tsx b/nkebao/src/pages/devices/DeviceDetail.tsx index 75947165..dfdabd70 100644 --- a/nkebao/src/pages/devices/DeviceDetail.tsx +++ b/nkebao/src/pages/devices/DeviceDetail.tsx @@ -1,8 +1,8 @@ -import React, { useState, useEffect, useRef } from 'react'; +import React, { useState, useEffect, useRef, useCallback } from 'react'; import { useParams, useNavigate } from 'react-router-dom'; import { ChevronLeft, Smartphone, Battery, Wifi, MessageCircle, Users, Settings, History, RefreshCw, Loader2 } from 'lucide-react'; -import { devicesApi, fetchDeviceDetail, fetchDeviceRelatedAccounts, fetchDeviceHandleLogs, updateDeviceTaskConfig } from '../../api/devices'; -import { useToast } from '../../components/ui/toast'; +import { devicesApi, fetchDeviceDetail, fetchDeviceRelatedAccounts, fetchDeviceHandleLogs, updateDeviceTaskConfig } from '@/api/devices'; +import { useToast } from '@/components/ui/toast'; interface WechatAccount { id: string; diff --git a/nkebao/src/pages/devices/Devices.tsx b/nkebao/src/pages/devices/Devices.tsx index bc0e18c8..422ae292 100644 --- a/nkebao/src/pages/devices/Devices.tsx +++ b/nkebao/src/pages/devices/Devices.tsx @@ -1,8 +1,8 @@ import React, { useState, useEffect, useRef, useCallback } from 'react'; import { useNavigate } from 'react-router-dom'; import { ChevronLeft, Plus, Search, RefreshCw, QrCode, Smartphone, Loader2, AlertTriangle, Trash2, X } from 'lucide-react'; -import { devicesApi } from '../../api'; -import { useToast } from '../../components/ui/toast'; +import { devicesApi } from '@/api'; +import { useToast } from '@/components/ui/toast'; // 设备接口 interface Device { diff --git a/nkebao/src/pages/login/Login.tsx b/nkebao/src/pages/login/Login.tsx index ff405497..14f23cd9 100644 --- a/nkebao/src/pages/login/Login.tsx +++ b/nkebao/src/pages/login/Login.tsx @@ -1,11 +1,11 @@ import React, { useState, useEffect } from 'react'; import { useNavigate, useSearchParams } from 'react-router-dom'; import { Eye, EyeOff, Phone } from 'lucide-react'; -import { useAuth } from '../../contexts/AuthContext'; -import { useToast } from '../../components/ui/toast'; -import { authApi } from '../../api'; -import WeChatIcon from '../../components/icons/WeChatIcon'; -import AppleIcon from '../../components/icons/AppleIcon'; +import { useAuth } from '@/contexts/AuthContext'; +import { useToast } from '@/components/ui/toast'; +import { authApi } from '@/api'; +import WeChatIcon from '@/components/icons/WeChatIcon'; +import AppleIcon from '@/components/icons/AppleIcon'; // 定义登录表单类型 interface LoginForm { diff --git a/nkebao/src/pages/profile/Profile.tsx b/nkebao/src/pages/profile/Profile.tsx index 46540578..870ce1c9 100644 --- a/nkebao/src/pages/profile/Profile.tsx +++ b/nkebao/src/pages/profile/Profile.tsx @@ -1,6 +1,6 @@ import React from 'react'; -import { useAuth } from '../../contexts/AuthContext'; -import { useToast } from '../../components/ui/toast'; +import { useAuth } from '@/contexts/AuthContext'; +import { useToast } from '@/components/ui/toast'; import { LogOut, User, Settings, Shield, Bell } from 'lucide-react'; export default function Profile() { diff --git a/nkebao/src/pages/wechat-accounts/WechatAccountDetail.tsx b/nkebao/src/pages/wechat-accounts/WechatAccountDetail.tsx index 5c187072..7c617075 100644 --- a/nkebao/src/pages/wechat-accounts/WechatAccountDetail.tsx +++ b/nkebao/src/pages/wechat-accounts/WechatAccountDetail.tsx @@ -18,9 +18,9 @@ import { AlertCircle, ArrowRightLeft } from 'lucide-react'; -import { useWechatAccount } from '../../contexts/WechatAccountContext'; -import { fetchWechatAccountSummary, fetchWechatFriends, fetchWechatFriendDetail } from '../../api/wechat-accounts'; -import { useToast } from '../../components/ui/toast'; +import { useWechatAccount } from '@/contexts/WechatAccountContext'; +import { fetchWechatAccountSummary, fetchWechatFriends, fetchWechatFriendDetail } from '@/api/wechat-accounts'; +import { useToast } from '@/components/ui/toast'; interface WechatAccountSummary { accountAge: string; @@ -407,7 +407,7 @@ export default function WechatAccountDetail() { return (