在 Blazor Webassembly 中完全完成 setInterval 的有效替代方法是什么?

What's the efficient alternative to setInterval done completely in Blazor Webassembly?

我在想这样的事情:

protected override async Task OnInitializedAsync() {
  //...
  RunMeEndlesslyWithoutAwait();
  //...
}
protected async Task RunMeEndlesslyWithoutAwait() {
  while (online) {
    //... do stuff
    await Task.Delay(60000);
  }
}

但我不确定这是否是最合适的。

使用 blazor webassembly 的 JS 函数 setInterval(...) 是否有任何已知的 best/efficient 方法?

您可能正在寻找 Timer

@using System.Timers

@code
{
  Timer timer = new Timer();

  protected override Task OnInitializedAsync()
    {
        timer.Interval = 6000;
        timer.Elapsed +=async(_, _) => await RunMeEndlesslyWithoutAwait();
    }
}