是否从'rxjs / internal / Observable'导入{Observable};可以接受吗?

时间:2019-12-02 08:23:37

标签: angular rxjs

我在文档中看到语法是import { Observable } from 'rxjs';,但是import { Observable } from 'rxjs/internal/Observable更好吗?

3 个答案:

答案 0 :(得分:3)

如果我们查看rxjs的source code,则在Observable下导出的'rxjs'为:

export { Observable } from './internal/Observable';

换句话说,它与'rxjs/internal/Observable'中的对象完全相同。

您应该从公共API而非内部路径导入。库开发人员将尝试最小化库的不同版本之间的公共API中的更改。如果您使用公共API,则很可能可以在不更改代码的情况下升级库。

答案 1 :(得分:1)

不,这不是更好。内部情况可能会发生变化,而公共API可能不会反映出来。

这样,您的导入可能会在将来的版本中中断(未标记为具有重大更改)。

答案 2 :(得分:0)

以我的经验,您应该使用公共API路径。

在运行ng build --prod时使用内部路径时,我会遇到问题,当您使用公共API路径时,将来可以轻松升级而无需修改大量代码