feat:对返回上一页做了处理

This commit is contained in:
许永平
2025-07-05 21:09:28 +08:00
parent 7b29660a51
commit 0385a4cfa9
13 changed files with 317 additions and 23 deletions

View File

@@ -1,5 +1,6 @@
import React, { useState, useEffect, useRef, useCallback } from 'react';
import { useParams, useNavigate } from 'react-router-dom';
import { smartGoBack, getBackButtonText } from '@/utils/navigation';
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';
@@ -443,11 +444,11 @@ export default function DeviceDetail() {
ID为 "{id}"
</div>
<button
onClick={() => navigate(-1)}
onClick={() => smartGoBack(navigate)}
className="bg-blue-600 hover:bg-blue-700 text-white px-4 py-2 rounded-lg flex items-center gap-2 transition-colors"
>
<ChevronLeft className="h-4 w-4" />
{getBackButtonText()}
</button>
</div>
</div>
@@ -462,7 +463,7 @@ export default function DeviceDetail() {
<div className="flex items-center gap-3">
<button
className="p-2 hover:bg-gray-100 rounded-lg transition-colors"
onClick={() => navigate(-1)}
onClick={() => smartGoBack(navigate)}
>
<ChevronLeft className="h-5 w-5" />
</button>

View File

@@ -1,5 +1,6 @@
import React, { useState, useEffect, useRef, useCallback } from 'react';
import { useNavigate } from 'react-router-dom';
import { smartGoBack } from '@/utils/navigation';
import { ChevronLeft, Plus, Search, RefreshCw, QrCode, Smartphone, Loader2, AlertTriangle, Trash2, X } from 'lucide-react';
import { devicesApi } from '@/api';
import { useToast } from '@/components/ui/toast';
@@ -381,7 +382,7 @@ export default function Devices() {
<div className="flex items-center gap-3">
<button
className="p-2 hover:bg-gray-100 rounded-lg transition-colors"
onClick={() => navigate(-1)}
onClick={() => smartGoBack(navigate)}
>
<ChevronLeft className="h-5 w-5" />
</button>

View File

@@ -1,5 +1,6 @@
import React, { useEffect, useState } from 'react';
import { useParams, useNavigate } from 'react-router-dom';
import { smartGoBack } from '@/utils/navigation';
import { ArrowLeft, Users, TrendingUp, Calendar, Settings, Play, Pause, Edit } from 'lucide-react';
interface PlanData {
@@ -92,7 +93,7 @@ export default function PlanDetail() {
<div className="flex items-center justify-between p-4">
<div className="flex items-center">
<button
onClick={() => navigate(-1)}
onClick={() => smartGoBack(navigate)}
className="mr-3 p-1 hover:bg-gray-100 rounded"
>
<ArrowLeft className="h-5 w-5" />

View File

@@ -1,5 +1,6 @@
import React, { useState } from 'react';
import { useNavigate } from 'react-router-dom';
import { smartGoBack } from '../../utils/navigation';
import { ArrowLeft, Check } from 'lucide-react';
interface ScenarioOption {
@@ -87,7 +88,7 @@ export default function NewPlan() {
<header className="sticky top-0 z-10 bg-white border-b">
<div className="flex items-center p-4">
<button
onClick={() => navigate(-1)}
onClick={() => smartGoBack(navigate)}
className="mr-3 p-1 hover:bg-gray-100 rounded"
>
<ArrowLeft className="h-5 w-5" />

View File

@@ -1,5 +1,6 @@
import React, { useEffect, useState } from 'react';
import { useParams, useNavigate } from 'react-router-dom';
import { smartGoBack } from '../../utils/navigation';
import { ArrowLeft, Plus, Users, TrendingUp, Calendar } from 'lucide-react';
interface Plan {
@@ -170,7 +171,7 @@ export default function ScenarioDetail() {
<div className="flex items-center justify-between p-4">
<div className="flex items-center">
<button
onClick={() => navigate(-1)}
onClick={() => smartGoBack(navigate)}
className="mr-3 p-1 hover:bg-gray-100 rounded"
>
<ArrowLeft className="h-5 w-5" />

View File

@@ -110,12 +110,7 @@ export default function WechatAccountDetail() {
// 如果没有账号数据,返回上一页
useEffect(() => {
if (!currentAccount) {
toast({
title: "数据错误",
description: "未找到账号信息,请重新选择",
variant: "destructive"
});
navigate('/wechat-accounts');
navigate('/');
return;
}
}, [currentAccount, navigate, toast]);

View File

@@ -1,5 +1,6 @@
import React, { useState, useEffect, useRef, useCallback } from 'react';
import { useNavigate } from 'react-router-dom';
import { smartGoBack } from '@/utils/navigation';
import { ChevronLeft, Search, RefreshCw, ArrowRightLeft, AlertCircle, Loader2 } from 'lucide-react';
import { fetchWechatAccountList, transformWechatAccount } from '@/api/wechat-accounts';
import { useToast } from '@/components/ui/toast';
@@ -155,7 +156,7 @@ export default function WechatAccounts() {
<div className="flex items-center px-4 py-3">
<button
className="p-2 hover:bg-gray-100 rounded-lg transition-colors"
onClick={() => navigate(-1)}
onClick={() => smartGoBack(navigate)}
>
<ChevronLeft className="h-5 w-5" />
</button>