Skip to content

Commit efe8ee9

Browse files
committed
refactor: 更新加载逻辑
1 parent 617da44 commit efe8ee9

File tree

1 file changed

+12
-22
lines changed

1 file changed

+12
-22
lines changed

src/BootstrapBlazor/Components/Table/Table.razor.cs

Lines changed: 12 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1261,42 +1261,32 @@ private void ResetColumnWidth(List<ITableColumn> columns)
12611261
private async Task InternalResetVisibleColumns(List<ITableColumn> columns, IEnumerable<ColumnVisibleItem>? items = null)
12621262
{
12631263
var cols = columns.Select(i => new ColumnVisibleItem(i.GetFieldName(), i.GetVisible()) { DisplayName = i.GetDisplayName() }).ToList();
1264-
List<ColumnVisibleItem>? ret = null;
1265-
if (ClientTableName != null && ShowColumnList)
1264+
if (items != null)
12661265
{
1267-
var jsonData = await JSRuntime.InvokeAsync<string>("localStorage.getItem", "bb-table-column-visiable-" + ClientTableName);
1268-
if (!string.IsNullOrEmpty(jsonData))
1266+
foreach (var column in cols)
12691267
{
1270-
try
1271-
{
1272-
ret = JsonSerializer.Deserialize<List<ColumnVisibleItem>>(jsonData, _serializerOption);
1273-
}
1274-
catch { }
1275-
if(ret != null)
1268+
var item = items.FirstOrDefault(i => i.Name == column.Name);
1269+
if (item != null)
12761270
{
1277-
foreach (var i in ret)
1271+
column.Visible = item.Visible;
1272+
if (!string.IsNullOrEmpty(item.DisplayName))
12781273
{
1279-
var col = cols.FirstOrDefault(d => d.Name == i.Name && d.DisplayName == i.DisplayName);
1280-
if (col != null)
1281-
{
1282-
col.Visible = i.Visible;
1283-
}
1274+
column.DisplayName = item.DisplayName;
12841275
}
12851276
}
12861277
}
12871278
}
1288-
if (items != null)
1279+
else if (!string.IsNullOrEmpty(ClientTableName))
12891280
{
1281+
// 读取浏览器配置
1282+
var clientColumns = await InvokeAsync<List<ColumnVisibleItem>>("reloadColumnList", ClientTableName);
1283+
clientColumns ??= [];
12901284
foreach (var column in cols)
12911285
{
1292-
var item = items.FirstOrDefault(i => i.Name == column.Name);
1286+
var item = clientColumns.FirstOrDefault(i => i.Name == column.Name);
12931287
if (item != null)
12941288
{
12951289
column.Visible = item.Visible;
1296-
if (!string.IsNullOrEmpty(item.DisplayName))
1297-
{
1298-
column.DisplayName = item.DisplayName;
1299-
}
13001290
}
13011291
}
13021292
}

0 commit comments

Comments
 (0)