Event po załadowaniu obiektu html

0

Mam kontrolkę kalendarza materiala, w której zmodyfikowałem, żeby w miejsce zaznaczonej komórki pojawiał się zaznaczony cały tydzień. Wszystko działa poprawnie, natomiast nie jestem w stanie ustawić, żeby w momencie załadowania html zaznaczał się aktualnie zaznaczony tydzień, który wcześniej został wybrany - tutaj wciąż pojawia się tylko zaznaczona komórka. Próbowałem wykorzystać event opened z dokumentacji Materiala (klik), ale zostaje on odpalony, jeszcze zanim załaduje się html.
Prosiłbym o pomoc: dodaję na stackblitz to, co udało mi się zrobić do tej pory: klik. Potrzebuję, żeby w momencie załadowania widoku uruchamiała się metoda setSelectedWeekBackground, która wybrany ostatnio tydzień powinna zaznaczyć na czerwono (przynajmniej w teorii, niestety nie miałem jak jej przetestować).

0

Pomogło:). Trzeba dodać hook AfterViewChecked, który pozwoli zaktualizować html.

    ngAfterViewChecked(): void {
        this.setSelectedWeekBackground();
    }

    setSelectedWeekBackground(): void {
        const elem = (document.getElementsByClassName('mat-calendar-body-selected') as HTMLCollection)[0] as HTMLObjectElement;
        if (elem) {
            const closest = elem.closest('tr');
            if (closest) {
                closest.classList.add('selected-week');
            }
        }
    }

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0