Я придумал метод декоратор, который будет делать то, что вы хотите.То есть, если вы не против импортировать эту функцию на все страницы.Затем вы просто присоединяете этот декоратор к жизненному циклу AfterViewInit
, например:
@setFocus()
ngAfterViewInit() { }
Функция декоратора затем будет искать первое найденное поле ввода и, если найдет, установить фокус на этот элемент:
export function setFocus(): MethodDecorator {
return function (target: Object, key: string, descriptor: PropertyDescriptor) {
descriptor.value = function (...args: any[]) {
const ele = document.getElementsByTagName("INPUT")[0] as HTMLElement;
if (ele) {
ele.focus();
return;
}
}
}
}
STACKBLITZ