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