Angular Rxjs:[ts]属性';管道';不存在于类型';一元函数<;可观察<;{}>;,可观察<;字符串{}>&燃气轮机';。任何
我正在尝试实现ngbTypeAhead,但是使用5.5.5版本的RxJS存在问题。我从RXJS6版本中获取了这个示例Angular Rxjs:[ts]属性';管道';不存在于类型';一元函数<;可观察<;{}>;,可观察<;字符串{}>&燃气轮机';。任何,angular,typescript,rxjs,angular5,rxjs5,Angular,Typescript,Rxjs,Angular5,Rxjs5,我正在尝试实现ngbTypeAhead,但是使用5.5.5版本的RxJS存在问题。我从RXJS6版本中获取了这个示例 "rxjs": "^5.5.2" and angular "^5.0.1", "typescript": "~2.6.1", 当我尝试在焦点上实现typeahead时,出现了如下错误: *[ts] Property 'pipe' does not exist on type 'UnaryFunction<Observable<{}>, Observable
"rxjs": "^5.5.2" and
angular "^5.0.1",
"typescript": "~2.6.1",
当我尝试在焦点上实现typeahead时,出现了如下错误:
*[ts] Property 'pipe' does not exist on type 'UnaryFunction<Observable<{}>, Observable<string | {}>>'.
any*
search2 = (text$: Observable<string>) => {
const debouncedText$ = text$.pipe(debounceTime(200), distinctUntilChanged());
const clicksWithClosedPopup$ = this.click$.pipe(filter(() => !this.instance.isPopupOpen()));
const inputFocus$ = this.focus$;
let mer = merge(debouncedText$, inputFocus$, clicksWithClosedPopup$);
debugger;
return mer.pipe(
map(term => (term === '' ? this.roadList
: this.roadList.filter(v => v.toLowerCase().indexOf(term.toString().toLowerCase()) > -1)).slice(0, 10))
);
}
*[ts]属性“pipe”在类型“UnaryFunction”上不存在。
任何*
search2=(文本$:可观察)=>{
const debouncedText$=text$.pipe(debounceTime(200),distinctUntilChanged());
const clicksWithClosedPopup$=this.click$.pipe(过滤器(()=>!this.instance.isPopupOpen());
const inputFocus$=this.focus$;
让mer=合并(debouncedText$,inputFocus$,单击SwithClosedPopup$);
调试器;
回油管(
地图(term=>(term==''这个.roadList
:this.roadList.filter(v=>v.toLowerCase().indexOf(term.toString().toLowerCase())>-1)).slice(0,10))
);
}
有谁能帮我解决一下如何重写上述search2方法的问题吗?你很可能是作为一个操作符导入了
merge
,而你想要merge
,它被称为“可观察的创建方法”,直接来自'rxjs'
因此,请检查您是否真的在RxJS 6中使用此导入:
import { merge } from 'rxjs';
…而不是导入您不需要的merge
运算符的此导入:
import { merge } from 'rxjs/operators'; // This imports just the operator
对于RxJS 5,请使用以下内容:
import { merge } from 'rxjs/observable/merge';
当我这样导入时,从'rxjs'导入{merge};作为/apps/node_modules/rxjs/Rx“”获取错误时,没有导出成员“merge”。通过从“rxjs/observable/merge”导入{merge}解决了此问题;谢谢!我忘了提到我发布的内容是针对rxjs 6的。对于rxjs 5,按照您的方式导入是正确的did@AhammadaliPK更新