微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

什么是tslint黑名单以及为什么angular-cli在tslint.json列表中默认rxjs?

认情况下,使用angular-cli项目,tslint设置包含了波动的东西.我最近接触过一个新的开发人员,我在Atom中配置了他们的tslint实例.

我被问到以下几行:

import { Observable,BehaviorSubject } from 'rxjs';

TSLinter说rxjs被列入黑名单.我去了tslint.json文件,果然,它被列出了.

什么是黑名单,它是否保护应用程序免受某些侵害?

为什么rxjs添加到列表中?

我应该在什么条件下添加其他东西呢?

我想指出我知道如何’解决’这个问题::

import { Observable } from 'rxjs/observable';
import { BehaviorSubject } from 'rxjs/BehaviorSubject';

问题仍然在于TSLint背景下黑名单的含义.

解决方法

这是因为你应该(至少在浏览器应用程序中)从未包含’rxjs’并且总是使用更具体的例如’rxjs / Observable’或’rxjs / BehaviorSubject’.

当您包含’rxjs’时,您实际上包含此文件https://github.com/ReactiveX/rxjs/blob/master/index.js,其中包括整个捆绑的RxJS库(所有运算符,调度程序等).所以你要包括许多你甚至不使用的东西,你的应用程序变得比必要的大(我认为使用webpack2的树状结构没有帮助,一旦包含代码,它将成为最终包的一部分,但我可能错了).

我认为可以直接从节点应用程序(例如后端应用程序)中的’rxjs’导入,它包含的内容并不重要,它也包含您不会使用的代码,这种方式更容易使用.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐