嗨,我是 angular 新手,正在学习 observable 和 Subject 的概念。我的理解是 observable 是其他代码可以订阅的事件发射器,Subject 既可以订阅也可以发射数据。我尝试了下面的代码,我检查以毫秒为单位的时间是否均匀,并基于此我发出成功和失败。基本上我已经创建了一个随机的成功和失败方法。问题是每当出现错误时,控件就会移动到错误块,但它永远不会打印成功或进入成功块。我不确定我做错了什么。如果您可以向我指出任何有助于消除我知识空白的博客或文档,请告诉我。提前致谢。
test() {
const test_subject = new Subject<any>();
var x = new Date();
console.log(x.getMilliseconds());
if (x.getMilliseconds() % 2) {
//debugger;
test_subject.next(true)
} else {
//debugger;
test_subject.error(false);
}
return test_subject.asObservable();
}
callSubscription() {
this.appService.test().
subscribe(data => {
console.log("success");
}, error => {
console.log("fail");
});
}