fix: 排序别名存储问题
This commit is contained in:
@@ -2093,10 +2093,12 @@ input[type="number"] {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
/* 亮色主题下,PC 右侧抽屉里的 Switch 拇指使用浅色,以保证对比度 */
|
||||
[data-theme="light"] .pc-table-setting-drawer .dca-toggle-thumb {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
|
||||
/* 移动端表格设置底部抽屉 */
|
||||
.mobile-setting-overlay {
|
||||
position: fixed;
|
||||
@@ -2538,6 +2540,13 @@ input[type="number"] {
|
||||
transition: left 0.2s;
|
||||
}
|
||||
|
||||
/* 亮色主题下:所有使用 dca-toggle 的拇指在浅底上统一用白色,保证对比度
|
||||
- PC 右侧排序设置抽屉
|
||||
- 移动端排序个性化设置 Drawer(以及其它区域) */
|
||||
[data-theme="light"] .dca-toggle-thumb {
|
||||
background: #ffffff;
|
||||
}
|
||||
|
||||
.dca-option-group {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
border-radius: 8px;
|
||||
|
||||
35
app/page.jsx
35
app/page.jsx
@@ -217,12 +217,37 @@ export default function HomePage() {
|
||||
}
|
||||
|
||||
if (rulesFromSettings && rulesFromSettings.length) {
|
||||
const merged = DEFAULT_SORT_RULES.map((rule) => {
|
||||
const found = rulesFromSettings.find((r) => r.id === rule.id);
|
||||
return found
|
||||
? { ...rule, enabled: found.enabled !== false }
|
||||
: rule;
|
||||
// 1)先按本地存储的顺序还原(包含 alias、enabled 等字段)
|
||||
const defaultMap = new Map(
|
||||
DEFAULT_SORT_RULES.map((rule) => [rule.id, rule])
|
||||
);
|
||||
const merged = [];
|
||||
|
||||
// 先遍历本地配置,保持用户自定义的顺序和别名/开关
|
||||
for (const stored of rulesFromSettings) {
|
||||
const base = defaultMap.get(stored.id);
|
||||
if (!base) continue;
|
||||
merged.push({
|
||||
...base,
|
||||
// 只用本地的 enabled / alias 等个性化字段,基础 label 仍以内置为准
|
||||
enabled:
|
||||
typeof stored.enabled === "boolean"
|
||||
? stored.enabled
|
||||
: base.enabled,
|
||||
alias:
|
||||
typeof stored.alias === "string" && stored.alias.trim()
|
||||
? stored.alias.trim()
|
||||
: base.alias,
|
||||
});
|
||||
}
|
||||
|
||||
// 再把本次版本新增、但本地还没记录过的规则追加到末尾
|
||||
DEFAULT_SORT_RULES.forEach((rule) => {
|
||||
if (!merged.some((r) => r.id === rule.id)) {
|
||||
merged.push(rule);
|
||||
}
|
||||
});
|
||||
|
||||
setSortRules(merged);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user