fix locale

This commit is contained in:
2025-12-09 04:09:33 +08:00
parent 429fb39140
commit 24512412e5
7 changed files with 230 additions and 89 deletions

View File

@@ -20,19 +20,16 @@
<span style="padding-left:10px;"><NavLink href="/account/login">Login</NavLink></span>
<span style="padding-left:10px;"><NavLink href="/weather">Weather</NavLink></span>
</div>
<div style="margin-top:16px;">
<strong>zh Quick links:</strong>
<span style="padding-left:10px;"><NavLink href="/zh/account/login">Login</NavLink></span>
<span style="padding-left:10px;"><NavLink href="/zh/weather">Weather</NavLink></span>
</div>
<div style="margin-top:16px;">
<strong>en Quick links:</strong>
<span style="padding-left:10px;"><NavLink href="/en/account/login">Login</NavLink></span>
<span style="padding-left:10px;"><NavLink href="/en/weather">Weather</NavLink></span>
</div>
@code {
[Parameter]
@@ -40,35 +37,20 @@
private int currentCount = 0;
protected override async Task OnInitializedAsync()
protected override Task OnInitializedAsync()
{
if (LocalizationProvider != null)
{
LocalizationProvider.LanguageChanged += OnLanguageChanged;
}
// If running in browser, ensure current culture loaded (WASM loads asynchronously)
if (OperatingSystem.IsBrowser() && LocalizationProvider != null)
{
try
{
await LocalizationProvider.LoadCultureAsync(LocalizationProvider.CurrentCulture);
}
catch { }
}
// localization handled globally in Routes. No per-page initialization needed.
return Task.CompletedTask;
}
private void OnLanguageChanged(object? sender, string culture)
{
_ = InvokeAsync(StateHasChanged);
// no-op; global router remount will update page translations
}
public void Dispose()
{
if (LocalizationProvider != null)
{
LocalizationProvider.LanguageChanged -= OnLanguageChanged;
}
// no per-page unsubscribe required
}
private void IncrementCount()