1
0

Use SetParametersAsync to only trigger OnParametersSet when necessary.

This commit is contained in:
Kevin Matsubara 2025-03-29 16:55:57 +01:00
parent f2b9daac52
commit b041d7d244

View File

@ -29,6 +29,29 @@
[Parameter]
public string SearchFilter { get; set; } = "";
public override Task SetParametersAsync(ParameterView parameters)
{
// Only trigger OnParametersSet if the parameter matches and has actually changed.
// This saves expensive calls to the data repository.
if (parameters.TryGetValue<string>("CityName", out var cityName))
{
if (cityName != CityName)
{
base.SetParametersAsync(parameters);
}
}
if (parameters.TryGetValue<string>("SearchFilter", out var searchFilter))
{
if (searchFilter != SearchFilter)
{
base.SetParametersAsync(parameters);
}
}
return Task.CompletedTask;
}
protected override void OnParametersSet()
{
if (string.IsNullOrWhiteSpace(this.SearchFilter))