combineLatest([o1, o2, o3])
combineLatest({
o1: o1$,
o2: o2$,
})
combineLatest([tank$, keys$, canvasSizes$])
keys$.pipe(
withLatest(tank$),
withLatest(canvasSizes$),
)
import { fromEvent, EMPTY, interval, merge, timer } from 'rxjs';
import { scan, startWith, switchMap, mapTo, delay } from 'rxjs/operators';
const DELAY=1000;
const button = document.createElement('button');
button.textContent = 'Click me';
document.documentElement.appendChild(button);
const click$ = fromEvent(button, 'click').pipe(
mapTo(false),
)
const unclick$ = click$.pipe(
delay(DELAY),
mapTo(true),
)
merge(click$, unclick$).pipe(
startWith(true),
switchMap(event => event ? timer(0, 1000) : EMPTY),
scan(acc => acc + 1, 0),
)
станавливатьна 300мсозначает "делать паузу"
merge(...[o1$, o2$, o$].map((o, i) => o.pipe(mark(i)))
Как при combineLatest но он дает последние значения а мне нужно null
@Directive({
selector: '[clickOutside]'
})
export class ClickOutsideDirective {
@Output('clickOutside') clickOutside = new EventEmitter();
constructor(
private elRef: ElementRef<HTMLElement>
) { }
@HostListener('document:click', ['$event.target']) onMouseClick(targetElement) {
const clickedInside = this.elRef.nativeElement.contains(targetElement);
if (!clickedInside) {
this.clickOutside.emit(targetElement);
}
}
}
<app-modalka (clickOutside)="onClickOutside($event)"></app-modalka>
Как написать роутинг, чтобы при .....
.... чтобы при авторизации был редирект на разные страницы?