From 8e54302e31929e63620bc376f769c3bd7088020e Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Thu, 17 Apr 2025 09:24:18 +0800 Subject: [PATCH 1/4] =?UTF-8?q?refactor:=20=E7=A7=BB=E9=99=A4=20TriggerFil?= =?UTF-8?q?ter=20=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/AutoComplete/AutoComplete.razor.cs | 2 +- .../Components/AutoComplete/PopoverCompleteBase.cs | 9 --------- .../Components/AutoFill/AutoFill.razor.cs | 2 +- src/BootstrapBlazor/Components/Search/Search.razor.cs | 4 ++-- 4 files changed, 4 insertions(+), 13 deletions(-) diff --git a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor.cs b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor.cs index d9c327186e8..a5bf61d8f9d 100644 --- a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor.cs +++ b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor.cs @@ -139,7 +139,7 @@ private async Task OnClickItem(string val) /// /// [JSInvokable] - public override async Task TriggerFilter(string val) + public async Task TriggerFilter(string val) { if (OnCustomFilter != null) { diff --git a/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs b/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs index 392cb512550..89e426fae3a 100644 --- a/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs +++ b/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs @@ -169,15 +169,6 @@ public async Task TriggerBlur() await OnBlurAsync(Value); } } - - /// - /// TriggerFilter 方法 - /// - /// - /// - [JSInvokable] - public virtual Task TriggerFilter(string val) => Task.CompletedTask; - /// /// /// diff --git a/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs b/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs index db790e9ef9f..c306690e49e 100644 --- a/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs +++ b/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs @@ -248,7 +248,7 @@ private async ValueTask> LoadItems(ItemsProviderRequ /// /// The value to filter by. [JSInvokable] - public override async Task TriggerFilter(string val) + public async Task TriggerFilter(string val) { if (OnQueryAsync != null) { diff --git a/src/BootstrapBlazor/Components/Search/Search.razor.cs b/src/BootstrapBlazor/Components/Search/Search.razor.cs index fdda496eb9b..ad638fac6ef 100644 --- a/src/BootstrapBlazor/Components/Search/Search.razor.cs +++ b/src/BootstrapBlazor/Components/Search/Search.razor.cs @@ -278,11 +278,11 @@ private async Task OnClickItem(TValue val) } /// - /// TriggerFilter 方法 + /// TriggerFilter method called by Javascript. /// /// [JSInvokable] - public override async Task TriggerFilter(string val) + public async Task TriggerFilter(string val) { _render = false; _displayText = val; From 294e7036f38c9ad045da118f8d8cb72ef281c4f3 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Thu, 17 Apr 2025 09:25:02 +0800 Subject: [PATCH 2/4] =?UTF-8?q?refactor:=20=E7=B2=BE=E7=AE=80=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor/Components/Search/Search.razor.cs | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/src/BootstrapBlazor/Components/Search/Search.razor.cs b/src/BootstrapBlazor/Components/Search/Search.razor.cs index ad638fac6ef..e9fc22ba6ff 100644 --- a/src/BootstrapBlazor/Components/Search/Search.razor.cs +++ b/src/BootstrapBlazor/Components/Search/Search.razor.cs @@ -208,14 +208,6 @@ protected override void OnParametersSet() } } - private bool _render = true; - - /// - /// - /// - /// - protected override bool ShouldRender() => _render; - private string _displayText = ""; /// /// 点击搜索按钮时触发此方法 @@ -284,13 +276,11 @@ private async Task OnClickItem(TValue val) [JSInvokable] public async Task TriggerFilter(string val) { - _render = false; _displayText = val; if (IsTriggerSearchByInput) { await OnSearchClick(); } - _render = true; _dropdown.Render(); } } From 38c945357cad3cc1f12e4312de32311f53298488 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Thu, 17 Apr 2025 09:34:16 +0800 Subject: [PATCH 3/4] =?UTF-8?q?refactor:=20=E5=A2=9E=E5=8A=A0=20OnBlur=20?= =?UTF-8?q?=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/AutoComplete/AutoComplete.razor | 2 +- .../Components/AutoComplete/PopoverCompleteBase.cs | 11 ----------- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor index 11ded062a34..b82400444c2 100644 --- a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor +++ b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor @@ -12,7 +12,7 @@ data-bb-auto-dropdown-focus="@ShowDropdownListOnFocusString" data-bb-debounce="@DurationString" data-bb-skip-esc="@SkipEscString" data-bb-skip-enter="@SkipEnterString" data-bb-blur="@TriggerBlurString" data-bb-scroll-behavior="@ScrollIntoViewBehaviorString" data-bb-trigger-delete="true" - @bind="@CurrentValueAsString" + @bind="@CurrentValueAsString" @onblur="@OnBlur" placeholder="@PlaceHolder" disabled="@Disabled" @ref="FocusElement"/> diff --git a/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs b/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs index 89e426fae3a..264a7880665 100644 --- a/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs +++ b/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs @@ -158,17 +158,6 @@ protected override void OnParametersSet() Offset ??= "[0, 6]"; } - /// - /// 触发 OnBlur 回调方法 由 Javascript 触发 - /// - [JSInvokable] - public async Task TriggerBlur() - { - if (OnBlurAsync != null) - { - await OnBlurAsync(Value); - } - } /// /// /// From 1c657dea07e53428bb86c08ee94e6445e8366853 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Thu, 17 Apr 2025 09:34:22 +0800 Subject: [PATCH 4/4] =?UTF-8?q?test:=20=E6=9B=B4=E6=96=B0=E5=8D=95?= =?UTF-8?q?=E5=85=83=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/UnitTest/Components/AutoCompleteTest.cs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/test/UnitTest/Components/AutoCompleteTest.cs b/test/UnitTest/Components/AutoCompleteTest.cs index 911e8c1972a..ede96aca84c 100644 --- a/test/UnitTest/Components/AutoCompleteTest.cs +++ b/test/UnitTest/Components/AutoCompleteTest.cs @@ -265,9 +265,8 @@ public async Task OnBlurAsync_Ok() return Task.CompletedTask; }); }); - - // trigger blur - await cut.InvokeAsync(() => cut.Instance.TriggerBlur()); + var input = cut.Find(".form-control"); + await cut.InvokeAsync(() => input.Blur()); Assert.Equal("test1", val); } @@ -328,9 +327,9 @@ public void Trigger_Ok() class MockPopoverCompleteBase : PopoverCompleteBase { - public override Task TriggerFilter(string val) + public Task TriggerFilter(string val) { - return base.TriggerFilter(val); + return Task.CompletedTask; } } }