Angular scrollIntoView()角度7不滚动
我试图在我的应用程序中实现从一个组件到另一个组件的滚动,但目前它只是跳转到该组件,而不是滚动 我尝试了以下方法:Angular scrollIntoView()角度7不滚动,angular,typescript,js-scrollintoview,Angular,Typescript,Js Scrollintoview,我试图在我的应用程序中实现从一个组件到另一个组件的滚动,但目前它只是跳转到该组件,而不是滚动 我尝试了以下方法: export class HomeComponent implements OnInit { scroll(el: HTMLElement) { el.scrollIntoView({ block: 'start', behavior: 'smooth', inline: 'nearest' }); } constructor() { } ngO
export class HomeComponent implements OnInit {
scroll(el: HTMLElement) {
el.scrollIntoView({ block: 'start', behavior: 'smooth', inline: 'nearest' });
}
constructor() {
}
ngOnInit() {
}
}
这是我的模板:
<section class="bg-full bg-home">
<div class="logo"></div>
<a (click)="scroll(testPortfolio)" href="#portfolio" id="scroll-to-section">
<img src="../../assets/arrow-scroll.svg" width="36">
</a>
</section>
<app-about></app-about>
<app-portfolio-slider #testPortfolio></app-portfolio-slider>
<app-contact></app-contact>
或者,我也尝试过使用ViewChild,但这总是返回未定义的,因为我假设它尚未渲染
我需要做什么才能使滚动顺利进行?所以我的假设是错误的。正如@arbghl在评论中提到的,作者只需要包装具有scrollIntoView方法的目标元素,并将该div用作目标元素。
希望能有所帮助。我建议您将目标组件包装在一个HTML标记中,该标记将为您提供一个HTML元素,该元素上有scrollIntoView方法。下面的代码片段应该有用,谢谢。为了使您的解决方案起作用,我需要用标签包装我的解决方案。