(data: any) => ((this.albums = data.albums), (this.menu = data.menu)),
(data: any) => {
this.albums = data.albums;
this.menu = data.menu;
}
public ngOnInit(): void {
this.getQueryParams();
this. findAll();
}
this.route.queryParams
.pipe(
mergeMap((params: Params) => {
this.params = {
skip: params['skip'],
take: params['take'],
};
return this.albumService.findAll(this.params)
),
tap((data: any) => {
this.albums = data.albums;
this.menu = data.menu;
}),
catchError(error => {
this.error = error.message;
console.error(error);
return EMPTY;
})
})
.subscribe();
<mat-slider (ngModelChange)="helpersService.slideValue1$.next(Number($event))"
[ngModel]="helpersService.slideValue1$.value"
min="0"
max="100"></mat-slider>
ngOnInit(): void {
this.helpersService.slideValue1$
.pipe(
takeUntil(this.destroy$),
tap(value => {
this.helpersService.slideValue2$.next(value);
)
)
.subscribe();
};
// или с методом
updateSliderValue(event: MatSliderChange){
this.helpersService.slideValue1$.next(Number(event));
}
ERROR TypeError: Cannot set properties of null (setting 'statusCode')
if (!!this.response) {
this.response.statusCode = 404;
this.response.statusMessage = '404 - Page Not Found';
}
20 error code ELIFECYCLE
21 error errno 1
22 error kokos-uwidget@0.1.0 build: `node node_modules/webpack/bin/webpack.js && node node_modules/gulp/bin/gulp.js`
22 error Exit status 1
23 error Failed at the kokos-uwidget@0.1.0 build script.
window.onpopstate = (event) => {
console.log(this);
this.my_func(); //идёт потеря контекста, а мне нужно запустить эту функцию
};
ngOnInit(){
this.my_func();
const self = this;
window.onpopstate = function(event) {
console.log(self );
self.my_func(); //идёт потеря контекста, а мне нужно запустить эту функцию
};
}
const callback = function(event) {
console.log(this);
this.my_func();
}
window.onpopstate = callback.bind(this);
getUserDictByLogins(logins: string[]): Observable<UserDict> {
if (!logins || logins.length === 0) {
return of({});
}
return this.getUsersByLogins(logins)
.pipe(
map(users => {
const userDict = {};
users.forEach(u => userDict[u.accountName] = u);
return userDict;
}),
catchError(err => {
console.log(err.data);
return this.getUserDictOneByOne(logins);
})
);
}
private getUserDictOneByOne(logins: string[]): Observable<UserDict> {
const observables: Observable<UserDict>[] = [];
logins.forEach(login => {
observables.push(this.getUsersByLogins([login])
.pipe(
map(users => {
const userDict = {};
users.forEach(u => userDict[u.accountName] = u);
return userDict;
}),
catchError(err => {
console.log("Error getting user data: ", login);
console.log(err.data);
const userDict = {};
const userBean = {
accountName: login,
displayName: login,
name: login,
fioShort: login,
iofShort: login
};
userDict[login] = userBean;
return of(userDict);
})));
});
return forkJoin(observables)
.pipe(
map((userDicts) => {
const userDict = {};
userDicts.forEach(u => Object.assign(userDict, u));
return userDict;
})
);
}
<h> и <p>
инлановыми, что судя по контекту - неверно. Сделайте их как <label> и как <span>
соответственно, добавьте нужные css правила для размера и жирности, добавьте margin-left. И тогда не придется искать костыли для неудаления пробелов в разметке.