【发布时间】:2020-05-19 07:35:17
【问题描述】:
所以,我有一个组件,我在其中订阅 ngOnInit 生命周期的表单控件之一中的值更改。但是在为它编写测试的时候,我得到了一个与跳过不是函数有关的错误。
我的组件文件如下所示
ngOnInit() {
this.buildForm();
this.cronTextSubscription = this.cronForm.get('emailCron').valueChanges
.skip(3)
.debounceTime(3000)
.distinctUntilChanged()
.subscribe(cronPattern => {
this.updateEmailCronPattern(cronPattern);
});
this.fetchCronExpression();
}
在运行测试时,我收到以下错误。
TypeError: this.cronForm.get(...).valueChanges.skip is not a function
我是 Angular 测试的新手,因此非常感谢任何帮助。
【问题讨论】:
-
您的语法来自 RxJS 5。检查测试中您使用的是 RX5 还是 6。如果您使用的是 6,那么您应该改用 .pipe
-
使用管道代替对我有用。感谢您的帮助。
标签: javascript angular testing rxjs observable