mirror of
https://github.com/Sagit-chu/flvx.git
synced 2026-10-06 10:06:36 +08:00
fix: preserve scroll position after editing forward rules
Move getForwardDisplayFlow outside component to prevent unnecessary re-renders that reset scroll position on save.
This commit is contained in:
@@ -579,6 +579,16 @@ const mapForwardApiItems = (items: ForwardApiItem[]): Forward[] => {
|
|||||||
}));
|
}));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const getForwardDisplayFlow = (forward: Forward): number => {
|
||||||
|
const directFlow = (forward.inFlow || 0) + (forward.outFlow || 0);
|
||||||
|
|
||||||
|
if (directFlow > 0) {
|
||||||
|
return directFlow;
|
||||||
|
}
|
||||||
|
|
||||||
|
return forward.federationShareFlow || 0;
|
||||||
|
};
|
||||||
|
|
||||||
export default function ForwardPage() {
|
export default function ForwardPage() {
|
||||||
const [loading, setLoading] = useState(true);
|
const [loading, setLoading] = useState(true);
|
||||||
const [forwards, setForwards] = useState<Forward[]>([]);
|
const [forwards, setForwards] = useState<Forward[]>([]);
|
||||||
@@ -1237,16 +1247,6 @@ export default function ForwardPage() {
|
|||||||
[],
|
[],
|
||||||
);
|
);
|
||||||
|
|
||||||
const getForwardDisplayFlow = (forward: Forward): number => {
|
|
||||||
const directFlow = (forward.inFlow || 0) + (forward.outFlow || 0);
|
|
||||||
|
|
||||||
if (directFlow > 0) {
|
|
||||||
return directFlow;
|
|
||||||
}
|
|
||||||
|
|
||||||
return forward.federationShareFlow || 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
// 切换显示模式并保存到localStorage
|
// 切换显示模式并保存到localStorage
|
||||||
const handleViewModeChange = () => {
|
const handleViewModeChange = () => {
|
||||||
const newMode = viewMode === "grouped" ? "direct" : "grouped";
|
const newMode = viewMode === "grouped" ? "direct" : "grouped";
|
||||||
|
|||||||
Reference in New Issue
Block a user