O
Size: a a a
J
СК
AB
O
AB
J
AB
ГР
J
this.virtualScroll
.elementScrolled()
.pipe(debounceTime(400))
.subscribe(e => {
const scrollPosition = this.virtualScroll.getOffsetToRenderedContentStart();
console.log(scrollPosition, e);
});
J
J
AB
this.virtualScroll
.elementScrolled()
.pipe(debounceTime(400))
.subscribe(e => {
const scrollPosition = this.virtualScroll.getOffsetToRenderedContentStart();
console.log(scrollPosition, e);
});
@Output() change = new Subject();
ngAfterViewInit() {
this.change = this.virtualScroll
.elementScrolled()
.pipe(debounceTime(400))
);
}
J
@Output() change = new Subject();
ngAfterViewInit() {
this.change = this.virtualScroll
.elementScrolled()
.pipe(debounceTime(400))
);
}
ГЩ
AB
J
Вキ
combineLatest(
this.store.select(selectRanges),
this.store.select(selectOccupations),
this.store.select(selectCountries),
this.store.select(selectBanks),
).subscribe(([ranges, occupations, countries, banks]) => {
console.log(1)
console.log(ranges, occupations, countries, banks);
});
export type SelectorMap<State, T> = {
[P in keyof T]: Selector<State, T[P]>;
};
export type StateMap<T> = {
[P in keyof T]: T[P];
}
export function createMapSelector<State, T>(
selectorMap: SelectorMap<State, T>
): Selector<State, StateMap<T>> {
let props = Object.entries(selectorMap);
const selectors = props.map(([_, s]) => s).reverse();
return createSelector.call(this, ...selectors, (...args) => {
const entries = props.map(([key], i) => [key, args[i]]);
return Object.fromEntries(entries);
});
}Вキ
const myFooBarSelector =
createMapSelector({
foo: selectFooBar,
bar: selectFooFoo
});
this.store.pipe(
select(myFooBarSelector)
);
DT