update pay ui

This commit is contained in:
2025-12-02 17:30:52 +08:00
parent 0dfbac7248
commit f24f37c50d
2 changed files with 32 additions and 1 deletions

View File

@@ -64,6 +64,11 @@ import MyFutureEvents from './components/MyFutureEvents';
import InvestmentPlanningCenter from './components/InvestmentPlanningCenter'; import InvestmentPlanningCenter from './components/InvestmentPlanningCenter';
export default function CenterDashboard() { export default function CenterDashboard() {
// 🔍 性能调试:记录组件渲染
const renderCountRef = React.useRef(0);
renderCountRef.current += 1;
console.log(`[Center] 🔄 渲染次数: ${renderCountRef.current}`, new Date().toISOString());
const { user } = useAuth(); const { user } = useAuth();
const location = useLocation(); const location = useLocation();
const navigate = useNavigate(); const navigate = useNavigate();
@@ -96,6 +101,8 @@ export default function CenterDashboard() {
const [quotesLoading, setQuotesLoading] = useState(false); const [quotesLoading, setQuotesLoading] = useState(false);
const loadData = useCallback(async () => { const loadData = useCallback(async () => {
console.log('[Center] 📡 loadData 被调用', new Date().toISOString());
console.trace('[Center] loadData 调用栈');
try { try {
const base = getApiBase(); const base = getApiBase();
const ts = Date.now(); const ts = Date.now();
@@ -218,19 +225,37 @@ export default function CenterDashboard() {
}; };
useEffect(() => { useEffect(() => {
console.log('[Center] 🔥 useEffect 触发', {
userId,
prevUserId: prevUserIdRef.current,
pathname: location.pathname,
hasUser: !!user,
time: new Date().toISOString()
});
const userIdChanged = prevUserIdRef.current !== userId; const userIdChanged = prevUserIdRef.current !== userId;
if (userIdChanged) { if (userIdChanged) {
console.log('[Center] ⚠️ userId 发生变化:', prevUserIdRef.current, '->', userId);
prevUserIdRef.current = userId; prevUserIdRef.current = userId;
} }
// 只在 userId 真正变化或路径变化时加载数据 // 只在 userId 真正变化或路径变化时加载数据
if ((userIdChanged || !prevUserIdRef.current) && user && location.pathname.includes('/home/center')) { const shouldLoad = (userIdChanged || !prevUserIdRef.current) && user && location.pathname.includes('/home/center');
console.log('[Center] 🤔 是否应该加载数据:', shouldLoad, {
userIdChanged,
prevUserIdRef: prevUserIdRef.current,
hasUser: !!user,
pathMatch: location.pathname.includes('/home/center')
});
if (shouldLoad) {
loadData(); loadData();
} }
const onVis = () => { const onVis = () => {
if (document.visibilityState === 'visible' && location.pathname.includes('/home/center')) { if (document.visibilityState === 'visible' && location.pathname.includes('/home/center')) {
console.log('[Center] 👁️ visibilitychange 触发 loadData');
loadData(); loadData();
} }
}; };

View File

@@ -70,6 +70,11 @@ const PanelLoadingFallback: React.FC = () => (
* InvestmentPlanningCenter 主组件 * InvestmentPlanningCenter 主组件
*/ */
const InvestmentPlanningCenter: React.FC = () => { const InvestmentPlanningCenter: React.FC = () => {
// 🔍 性能调试
const renderCountRef = React.useRef(0);
renderCountRef.current += 1;
console.log(`[InvestmentPlanningCenter] 🔄 渲染次数: ${renderCountRef.current}`, new Date().toISOString());
const toast = useToast(); const toast = useToast();
// 颜色主题 // 颜色主题
@@ -88,6 +93,7 @@ const InvestmentPlanningCenter: React.FC = () => {
* 加载所有事件数据(日历事件 + 计划 + 复盘) * 加载所有事件数据(日历事件 + 计划 + 复盘)
*/ */
const loadAllData = useCallback(async (): Promise<void> => { const loadAllData = useCallback(async (): Promise<void> => {
console.log('[InvestmentPlanningCenter] 📡 loadAllData 被调用', new Date().toISOString());
try { try {
setLoading(true); setLoading(true);
const base = getApiBase(); const base = getApiBase();