将异步管道连接到新创建的Observable时,会出现错误
"Cannot read property 'subscribe' of undefined"
这是一个Plunkr,展示了我所谈论的内容: https://plnkr.co/edit/vljXImCYoNubjyxOaWo3?p=preview
但是,如果我发表评论
private asyncList: Observable<string[]> = new Observable<string[]>();
并取消评论
//private asyncList: Observable<string[]>;
然后页面加载没有问题。也许我错过了一些显而易见的东西,但这让我陷入了困境。
这个Plunkr是从其他人那里分出来的,我做了最少量的工作来演示错误,所以请原谅你看到的任何奇怪的命名或做法。
答案 0 :(得分:2)
使用new Observable()
与调用Observable.create()
相同,这意味着您需要为其提供“订阅”功能,该功能在订阅时向观察者发出值。例如:
private asyncList = new Observable<string[]>(o => o.next('Hello'));
请注意,您的演示中的错误会在Observable中抛出,而不是在管道本身中抛出。
我对parameter in the Observable class is optional感到惊讶。我不知道你可能会忽略它的任何用例......