Skip to content

Commit 48ac1da

Browse files
committed
refactor: 重构代码
1 parent 677e723 commit 48ac1da

File tree

2 files changed

+20
-25
lines changed

2 files changed

+20
-25
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
@namespace BootstrapBlazor.Components
22

3-
<Select Items="@Items" Color="@Color.Info" class="is-condition" @bind-Value="Value"></Select>
3+
<Select Items="@_items" Color="@Color.Info" class="is-condition" Value="_value" OnValueChanged="OnValueChanged"></Select>

src/BootstrapBlazor/Components/Filters/FilterLogicItem.razor.cs

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -8,54 +8,49 @@
88
namespace BootstrapBlazor.Components;
99

1010
/// <summary>
11-
///
11+
/// FilterLogicItem 组件用于选择过滤条件的逻辑运算符
1212
/// </summary>
1313
public partial class FilterLogicItem
1414
{
15-
private FilterLogic _value;
16-
private FilterLogic Value
17-
{
18-
get
19-
{
20-
_value = Logic;
21-
return _value;
22-
}
23-
set
24-
{
25-
_value = value;
26-
if (LogicChanged.HasDelegate) LogicChanged.InvokeAsync(value);
27-
}
28-
}
29-
3015
/// <summary>
31-
///
16+
/// 获得/设置 逻辑运算符
3217
/// </summary>
3318
[Parameter]
3419
public FilterLogic Logic { get; set; }
3520

3621
/// <summary>
37-
///
22+
/// 获得/设置 逻辑运算符改变回调方法
3823
/// </summary>
3924
[Parameter]
4025
public EventCallback<FilterLogic> LogicChanged { get; set; }
4126

42-
private IEnumerable<SelectedItem>? Items { get; set; }
43-
4427
[Inject]
4528
[NotNull]
4629
private IStringLocalizer<FilterLogicItem>? Localizer { get; set; }
4730

31+
private readonly List<SelectedItem> _items = [];
32+
private FilterLogic _value;
33+
4834
/// <summary>
49-
///
35+
/// <inheritdoc/>
5036
/// </summary>
5137
protected override void OnInitialized()
5238
{
5339
base.OnInitialized();
5440

55-
Items = new List<SelectedItem>()
56-
{
41+
_items.AddRange(
42+
[
5743
new SelectedItem("And",Localizer["And"].Value),
5844
new SelectedItem("Or",Localizer["Or"].Value)
59-
};
45+
]);
46+
}
47+
48+
private async Task OnValueChanged(FilterLogic val)
49+
{
50+
_value = val;
51+
if (LogicChanged.HasDelegate)
52+
{
53+
await LogicChanged.InvokeAsync(_value);
54+
}
6055
}
6156
}

0 commit comments

Comments
 (0)