Посетители могут просматривать файлы, загруженные другими пользователями

Немного поздно, но вот ответ, который я нашел, работает:

Anchor

И в компоненте:

constructor( private route: ActivatedRoute, private router: Router ) {}

  onAnchorClick ( ) {
    this.route.fragment.subscribe ( f => {
      const element = document.querySelector ( "#" + f )
      if ( element ) element.scrollIntoView ( element )
    });
  }

Вышеприведенное не позволяет автоматически перейти к представлению если вы уже приземлились на страницу с якорем, поэтому я использовал решение выше в моем ngInit, чтобы он мог работать и с этим:

ngOnInit() {
    this.router.events.subscribe(s => {
      if (s instanceof NavigationEnd) {
        const tree = this.router.parseUrl(this.router.url);
        if (tree.fragment) {
          const element = document.querySelector("#" + tree.fragment);
          if (element) { element.scrollIntoView(element); }
        }
      }
    });
  }

Обязательно импортируйте Router, ActivatedRoute и NavigationEnd в начало вашего компонента, и все должно быть хорошо.

Источник

0
задан user10917772 15 January 2019 в 15:50
поделиться