Метод кода вызова при запуске приложения (без необходимости вызова @onclick) - PullRequest
0 голосов
/ 12 февраля 2020

Как запустить функцию StartClock () при загрузке компонента без вызова события @onclick?

@page "/clock"
@using System.Threading;

<p @onclick=@StartClock>@currenttime</p>

@code
 {
    string currenttime = DateTime.Now.ToString("dd/mm/yyyy HH:mm:ss");

    void StartClock()
    {
        var timer = new Timer(new TimerCallback(_ =>
        {
            InvokeAsync(() => {
                currenttime = DateTime.Now.ToString("dd/mm/yyyy HH:mm:ss");
                StateHasChanged();
            });
        }), null, 1000, 1000);
    }
}

1 Ответ

0 голосов
/ 12 февраля 2020

Вот код обновления после ответа @Rich Bryant

@page "/clock"
@using System.Threading;

<p>@currenttime</p>

@code
 {
    private string currenttime = DateTime.Now.ToString("dd/mm/yyyy HH:mm:ss");

    private void StartClock()
    {
        var timer = new Timer(new TimerCallback(_ =>
        {
            InvokeAsync(() =>
            {
                currenttime = DateTime.Now.ToString("dd/mm/yyyy HH:mm:ss");
                StateHasChanged();
            });
        }), null, 1000, 1000);
    }

    protected override void OnAfterRender(bool firstRender)
    {
        StartClock();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...