angular cli rxjs运算符导入
在使用angular cli创建的组件中,我从未添加过导入'rxjs/add/operator/first'代码> 但是,使用angular cli rxjs运算符导入,angular,rxjs,angular-cli,Angular,Rxjs,Angular Cli,在使用angular cli创建的组件中,我从未添加过导入'rxjs/add/operator/first' 但是,使用this.route.params.first()仍然有效。为什么? 是否可以不必在每个文件中导入大量运算符?像 import 'rxjs/add/operator/first'; 请参见插入可观察的原型的操作员。看 这种导入不需要按文件进行。它们只需要导入一次,之后,可以通过原型调用操作符 此外,如果您要导入的另一个库恰好使用了该导入,则原型将已修补,操作员将可用。因此,一
this.route.params.first()
仍然有效。为什么?
是否可以不必在每个文件中导入大量运算符?像
import 'rxjs/add/operator/first';
请参见插入可观察的原型的操作员。看
这种导入不需要按文件进行。它们只需要导入一次,之后,可以通过原型调用操作符
此外,如果您要导入的另一个库恰好使用了该导入,则原型将已修补,操作员将可用。因此,一些库(如Angular)在不修补原型的情况下显式导入操作符。(这样,客户机代码就不会依赖于Angular本来可以放置的任何原型修补导入,并且Angular中的导入可以在不破坏客户机代码的情况下被删除。)
中有关于各种导入机制的更多信息。此外,不久前我还公开了一组TSLint规则,以帮助管理这些RxJS导入: