@inject IDIS_TemplateService TemplateService
@using Cysharp.Threading.Tasks
@using global::CAICT.IDIS.Service
@using global::CAICT.IDIS
@using BITKit
选择标识模板
刷新
@currentMessage
@if (templates.Length is not 0)
{
@foreach (var item in templates)
{
@(item.Prefix)/@(item.Version)
}
}
else
{
@for (var i = 0; i < 5; i++)
{
}
}
@code {
[Parameter]
public Reference? Reference { get; set; }
private IDIS_Template[] templates = Array.Empty();
private string currentMessage { get; set; } = "模板为空?试着刷新一下";
private Severity severity { get; set; } = Severity.Normal;
[Parameter]
public Action OnSelectTemplate { get; set; }
protected override void OnInitialized()
{
base.OnInitialized();
if (Reference is not null)
Reference.value = this;
}
public async UniTask Refresh()
{
templates = Array.Empty();
await InvokeAsync(StateHasChanged);
currentMessage = "正在刷新模板";
severity = Severity.Info;
try
{
templates = await TemplateService.ToArrayAsync();
currentMessage = "模板刷新完成";
severity = Severity.Info;
}
catch (Exception e)
{
currentMessage = e.Message;
severity = Severity.Error;
}
await InvokeAsync(StateHasChanged);
}
}