问题描述
我有两种不同的视图(列表和卡片),我想保存切换的视图,以便在 Blazor/C# 中重新加载页面时它不会更改。
<p>Testing-Function</p>
<button @onclick="ToggleListCard">Testing-button</button>
private bool CardisActive = true;
private void ToggleListCard() {
if (CardisActive == true)
{
CardisActive = false;
OnCardListToggled.InvokeAsync(CardisActive = false);
Console.WriteLine("True Toggled!");
}
else
{
CardisActive = true;
OnCardListToggled.InvokeAsync(CardisActive = true);
Console.WriteLine("False Toggled!");
}
Console.WriteLine("Toggled!");
}
解决方法
您可以使用此 https://github.com/Blazored/LocalStorage 库将对象保存到浏览器本地存储并在每次需要时读取它。
替代方法:使用 JS 互操作获取并保存在本地存储中
JS 互操作:https://docs.microsoft.com/en-us/aspnet/core/blazor/call-javascript-from-dotnet?view=aspnetcore-5.0
本地存储:https://www.w3schools.com/html/html5_webstorage.asp