zauważyłem, że nie można używać w kątowym 2 składników bootstrap funkcji jak data-spy="affix"
Jak korzystać Scrollspy i umieszcza w kątowa 2
Czy ktoś wie, jak używać przyrostek i scrollspy w kątowym 2? (Example)
zauważyłem, że nie można używać w kątowym 2 składników bootstrap funkcji jak data-spy="affix"
Jak korzystać Scrollspy i umieszcza w kątowa 2
Czy ktoś wie, jak używać przyrostek i scrollspy w kątowym 2? (Example)
Możesz napisać swoją małą dyrektywę, która zrobiłaby to samo. Dzielę mój kod:
dyrektywa:
@Directive({
selector: '[scrollPoint]'
})
export class ScrollPointDirective {
@Input() scrollPoint: number;
constructor(
@Inject(DOCUMENT) private document: Document,
private renderer: Renderer,
private el: ElementRef
) { }
@HostListener('window:scroll', [])
onWindowScroll() {
const windowScroll = this.document.body.scrollTop;
if (windowScroll > this.nsgScrollPoint) {
//add class to the native element
this.renderer.setElementClass(this.el.nativeElement, 'sticky-nav', true);
} else {
//remove class from native element
this.renderer.setElementClass(this.el.nativeElement, 'sticky-nav', false);
}
}
}
Parametr @Input ScrollPoint mogą być przekazywane z HTML
HTML:
<div [scrollPoint]="235">
<ul class="nav-stacked">
//your code
</ul>
</div>
Dodaj CSS do klasy dodanej w dyrektywie:
CSS
.sticky-nav {
position: sticky;
top: 90px;
bottom: 0;
}
I nie były w stanie zintegrować umieszcza na angular2 jak dobrze, ale to nie dla mnie. Mam nadzieję, że to pomaga.
Nie potrzebujesz dyrektywy, aby to działało (Angular 5.0).
1) Upewnij się, bootstrap 3 jest załadowany <script src="assets/js/bootstrap.min.js"></script>
2) należy zidentyfikować element przelewowy gdzie zwój jest widoczny. <aside class="affix-mc" data-spy="affix" data-target=".main-body" data-offset-top="20">
O ile pasek przewijania jest pochodzi z window
, trzeba określić data-target
3) tematyką elementu nieco, ex. &.affix { width: 180px }
Takie podejście działa nawet w przypadku stron osadzonych w urządzeniach potomnych routerów.
użyj tego, wciąż próbuję dowiedzieć się, jak używać z nim afixu, https://www.npmjs.com/package/ng2-scrollspy –
Czy udało Ci się ustawić afix z angular2? Stoję w obliczu tego samego "problemu". – Ben
@Ben Właśnie utworzyłem usługę ze zdarzeniem podczas przewijania i dyrektywą, która ustawia styl elementu na podstawie pewnej logiki. Chciałbym się nim podzielić, ale nie mam już kodu. Prawdopodobnie możesz również użyć tego: https://www.npmjs.com/package/ng2-page-scroll, wystarczy pogrubić element na przewijaniu, prawdopodobnie nie jestem pewien –