У меня есть два именованных шаблона. Я хочу применить высоту первого ко второму всякий раз, когда изменяется содержимое первого. Я могу получить доступ к ним обоим, используя ElementRef внутри компонента. Итак, когда я изменяю свойства, привязанные к первому шаблону, я использую соответствующий ElementRef, чтобы получить его высоту и применить его к ElementRef второго шаблона.
Теперь проблема в том, что после изменения свойства высота, которую я получаю из ElementRef, соответствующего первому шаблону, не является обновленной высотой. Он возвращает высоту div до изменения свойства и повторного рендеринга.
Я хочу иметь возможность получить фактическую высоту рендеринга после обновления div. Что я делаю не так?
Обновление:
Код:
var height = `${this.profile.nativeElement.offsetHeight}px`;
this.renderer.setStyle(this.board.nativeElement, "height", height);
this.renderer.setStyle(
this.board.nativeElement,
"overflow-y",
"scroll"
);
Здесь profile — это ElementRef, соответствующий первому div, а board — ElementRef второго. После изменения свойства я вызываю функцию, содержащую приведенный выше код. Тогда высота, которую я получаю, - это старая высота div, то есть до изменения свойства и повторного рендеринга.
element.offsetHeight;
? - person Sulthan Allaudeen   schedule 19.03.2018tick()
для цикла обнаружения изменений. - person Shashank Vivek   schedule 19.03.2018