#javascript #rxjs #rxjs6 #rxjs-observables #rxjs-pipeable-operators
#javascript #rxjs #rxjs6 #rxjs-наблюдаемые #rxjs-pipeable-операторы
Вопрос:
Поскольку я работал с angular9, а компилятор ivy включал значение false.Все работало нормально.Но после обновления приложения до angular v10 и получения связанного с rxjs оператора и связанной с observable ошибки компиляции.
Перед:
«rxjs»: «^6.5.5», «rxjs-compat»: «^6.5.5»
После(теперь rxjs-compat удален):
«rxjs»: «^6.6.2»
Ошибка:
error TS2339: Property 'filter' does not exist on type 'Observable<any>'.
Код:
let fromdate$ = of(fromdatevalue)
let fromdateIfNull = fromdate$.filter(date => date != null)
.map(date => {
let fromdate = new Date(fromdatevalue);
fromdate.setHours(8, 0, 0, 0);
return fromdate;
})
Как устранить ошибку, и я хочу правильно использовать rxjs
импорт в приложении angular v10.
Спасибо.
Комментарии:
1. Я полагаю, вы хотите
pipe(filter(date => date !== null))
, чтобы и канал, и фильтр импортировались из rxjs2. Однако, учитывая, что вы делаете
of(fromdatevalue)
и у вас уже есть это значение, я не уверен, зачем вы вообще используете observable3. @Taplar выше приведен только пример кода … но вот так во многих местах я получаю ошибки такого рода, так что … я хочу с кодом и без изменений кода… в обоих случаях, как импортировать observalbe / operator из rxjs.
4. Похоже, вы используете старый синтаксис rxjs. Почему вы удалили
rxjs-compat
? Вам нужно, чтобы это можно было сделать.filter
.5. @AliF50 да, снова добавлено
rxjs-compat
… как узнать о «.. использовании старого синтаксиса rxjs»… что лучше всего знать о неправильном syntax?…in ошибка компонента импорт фильтра недоступен.