我们的tslint项目
module.exports = function(config) {
config.set({
basePath: '',
frameworks: ['mocha', 'chai'],
files: [
'test/*.test.js'
],
exclude: [
],
preprocessors: {
'test/*.test.js': ['webpack']
},
webpack: {
mode: "none",
module: {
rules: [
{ test: /\.js?$/, loader: "babel-loader", options: { presets: ["env"] }, }
]
}
},
reporters: ['progress'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
singleRun: false,
concurrency: Infinity,
browserNoActivityTimeout: 100000
})
}
因此,如果我以rxjs6格式导入,它将显示此列表已列入黑名单。当我搜索包含rxjs的原因时,将导入所有Rx功能并增加应用程序包方面。
因此,对于Observable,当前将Observer导入为
"import-blacklist": [
true,
"rxjs"
]
我想使用import { Observable } from 'rxjs/Observable';
import { Observer } from 'rxjs/Observer';
,但会导致错误
rxjs_Observable__WEBPACK_IMPORTED_MODULE_8 __。Observable.empty为 不是功能
Observable.empty();
我可以直接致电import { empty } from 'rxjs/Observable/empty';
。但是编辑器中的empty()
表明它已被弃用。
在rxjs 6中搜索后,它应该import { empty }
。
因此,我想问一下如何在不增加应用程序捆绑包大小的情况下解决此导入{empty}弃用问题。从'rxjs'导入{Observable,Observer}是否真的增加了大小?
如果从“ rxjs”导入,则可以使用Observable.empty()。没问题。
非常感谢。
答案 0 :(得分:0)
如果要使用空,则首选方法是使用empty constant
所以你会
import { EMPTY } from 'rxjs';
foo$.pipe(() => EMPTY).subscribe(() => {});
答案 1 :(得分:0)
在最新版本的RxJs中使用empty的最佳方法:
clo
在没有调度程序的情况下,任何对空的调用都返回了相同的Observable实例。最好使用它而不是empty()
有关rxjs-dev.firebaseapp的更多信息