Observable.first()。subscribe()代替Promise.then()

时间:2017-09-06 19:10:05

标签: rxjs rxjs5

我最近将各种方法从返回的promises转换为返回的observable。目前,这些方法通常只返回单个值。所以,在我以前拨打myMethod.then()的地方,我切换到了myMethod.first().subscribe()。我这样做而不只是subscribe(),因为我希望自动完成并清理可观察和订阅。我对此的理解是否正确,这是一种合理的方法吗?

1 个答案:

答案 0 :(得分:6)

如果您以前的承诺现在是一个可以在发布其值后完成的可观察的,那么您不必为生命周期清理添加.first()。这只是你的observable的一个修饰符,它向未来你(或同事)发出一个信号意图,你期望从被调用的observable中获得一个值,否则代码就会出错。