Я переношу свой проект с Ionc3 на Ionic5. У меня есть ion-textarea, который увеличивает высоту как пользовательские типы, и это работает в Ionic3. Ниже приведен код.
HTML страница:
<ion-textarea #hvUserPost type="text" (input)="adjustDesc()"></ion-textarea>
Страница TS:
@ViewChild('hvUserPost') hvUserPost: ElementRef;
adjustDesc() {
let textArea;
textArea = this.hvUserPost['_elementRef'].nativeElement.getElementsByClassName("text-input")[0];
textArea.style.overflow = 'hidden';
textArea.style.height = 'auto';
var scrollHeight = textArea.scrollHeight;
textArea.style.height = scrollHeight + 'px';
}
Теперь в Ionic4 изменяется только следующее объявление: 1009 *
@ViewChild('hvUserPost', {static: false}) hvUserPost: ElementRef;
В Ionic4 я получаю следующую ошибку:
ERROR TypeError: Cannot read property 'nativeElement' of undefined
Так что this.hvUserPost['_elementRef']
не определено и this.hvUserPost.nativeElement
также не определено.