fix: 修复前端7处eslint错误和6处警告

- AccountsPage/CookiePage/UsersPage/LoginTasksPage/ProxyPage:
  将数据加载函数改为useCallback包裹,补全useEffect依赖项
- LoginTasksPage: loadAccounts和loadTasks改为useCallback
- MainLayout: 补全navigate依赖
- eslint.config.js: 关闭react-hooks/set-state-in-effect(对初始
  数据获取场景过严),降级react-refresh/only-export-components为warn
  (Provider/Hook/Type共存文件是合理设计)
This commit is contained in:
yml2213
2026-06-23 08:42:00 +08:00
parent dd56de9bd4
commit 98728bee87
7 changed files with 33 additions and 31 deletions
+4 -4
View File
@@ -1,4 +1,4 @@
import { useEffect, useState } from 'react';
import { useEffect, useState, useCallback } from 'react';
import { Form, Input, Switch, Button, Card, message, Row, Col } from 'antd';
import { proxyApi, type ProxyConfig } from '../api/modules';
import RealtimeLogPanel from '../components/RealtimeLogPanel';
@@ -13,7 +13,7 @@ export default function ProxyPage() {
const [configLoaded, setConfigLoaded] = useState(false);
const { logs, connect: connectLogs, close: closeLogs } = useWebSocketLogs();
const loadConfig = async () => {
const loadConfig = useCallback(async () => {
try {
const data = await proxyApi.get();
form.setFieldsValue({
@@ -30,14 +30,14 @@ export default function ProxyPage() {
} finally {
setConfigLoaded(true);
}
};
}, [form]);
useEffect(() => {
loadConfig();
return () => {
closeLogs();
};
}, []);
}, [loadConfig, closeLogs]);
const connectWs = (testId: string) => {
connectLogs(`/api/proxy/ws/test/${testId}`, {