diff --git a/src/BootstrapBlazor.Server/Components/Pages/Coms.razor b/src/BootstrapBlazor.Server/Components/Pages/Coms.razor index 4ef952c87d1..84da863cd6a 100644 --- a/src/BootstrapBlazor.Server/Components/Pages/Coms.razor +++ b/src/BootstrapBlazor.Server/Components/Pages/Coms.razor @@ -4,7 +4,8 @@ - ; +} diff --git a/src/BootstrapBlazor/Components/Search/Search.razor.cs b/src/BootstrapBlazor/Components/Search/Search.razor.cs index 1e466edf07e..a906766744a 100644 --- a/src/BootstrapBlazor/Components/Search/Search.razor.cs +++ b/src/BootstrapBlazor/Components/Search/Search.razor.cs @@ -171,6 +171,9 @@ public partial class Search private SearchContext _context = default!; + [NotNull] + private RenderTemplate? _dropdown = default; + /// /// /// @@ -205,6 +208,14 @@ protected override void OnParametersSet() } } + private bool _render = true; + + /// + /// + /// + /// + protected override bool ShouldRender() => _render; + private string _displayText = ""; /// /// 点击搜索按钮时触发此方法 @@ -218,7 +229,7 @@ private async Task OnSearchClick() await Task.Yield(); var items = await OnSearch(_displayText); - _filterItems = items.ToList(); + _filterItems = [.. items]; ButtonIcon = SearchButtonIcon; if (IsTriggerSearchByInput == false) { @@ -280,11 +291,13 @@ private async Task OnClickItem(TValue val) [JSInvokable] public override async Task TriggerChange(string val) { + _render = false; _displayText = val; - if (IsTriggerSearchByInput) { await OnSearchClick(); } + _render = true; + _dropdown.Render(); } }