Чего я хочу добиться, так это щелкнуть и выполнить плавную прокрутку до нижней/указанной области div, которую я определяю с помощью хэштега, как я думаю, так и должно быть.
Вот живой пример в примере w3school, который написан для JQuery: https://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_eff_animate_smoothscroll
Что я делаю, так это заглядываю в ответ: Angular2 Маршрутизация с хэштегом к привязке страницы
но я не очень понимаю ответ, ответ выглядит так:
эта часть HTML часть:
<a [routerLink]="['somepath']" fragment="Test">Jump to 'Test' anchor </a>
и ниже, router.navigate, где я должен поместить код? component.ts верно? но как мне получить доступ к этой функции? я должен реализовать (клик)?
this._router.navigate( ['/somepath', id ], {fragment: 'test'});
и ниже этого я получаю это, что это должно написать в моем component.ts:
** Add Below code to your component to scroll**
import {ActivatedRoute} from '@angular/router'; // <-- do not forget to import
private fragment: string;
constructor(private route: ActivatedRoute { }
ngOnInit() {
this.route.fragment.subscribe(fragment => { this.fragment = fragment; });
}
ngAfterViewInit(): void {
try {
document.querySelector('#' + this.fragment).scrollIntoView();
} catch (e) { }
}
что значит "некий путь"? Я должен добавить маршрут в мои route.ts правильно? обычно я добавляю новый путь, например, вот так:
export const routes: Routes = [
{ path: '', redirectTo: '/home', pathMatch: 'full' },
{ path: 'product', redirectTo: '/product' },
...homeRoutes,
...productRoutes
];
Может ли кто-нибудь предоставить мне полный пример кода в HTML, маршруты и компоненты?