chore fix

This commit is contained in:
2025-12-06 13:30:17 +08:00
parent 2972886576
commit 8aca372fc1
43 changed files with 984 additions and 595 deletions

View File

@@ -0,0 +1,31 @@
using Atomx.Admin.Client.Services;
using Microsoft.AspNetCore.Components;
namespace Atomx.Admin.Client.Utils
{
/// <summary>
/// 继承此基类的组件会自动订阅 LanguageProvider 的语言变更事件并在变更时重新渲染。
/// </summary>
public abstract class LocalizedComponentBase : ComponentBase, IDisposable
{
[Inject]
protected LanguageProvider LanguageProvider { get; set; } = null!;
protected override void OnInitialized()
{
base.OnInitialized();
LanguageProvider.OnLanguageChanged += LanguageChangedHandler;
}
private void LanguageChangedHandler()
{
// 在组件上下文中安全调用 StateHasChanged
_ = InvokeAsync(StateHasChanged);
}
public void Dispose()
{
LanguageProvider.OnLanguageChanged -= LanguageChangedHandler;
}
}
}