问题标签 [rxjs-compat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - 将 rxjs 升级到 6 后,类型“Observable”上不存在属性“地图”
我按照https://update.angular.io的说明将我的 Angular 应用程序从 5.2 版升级到了 6.0 版。
现在,由于“rxjs-5-to-6-migrate”迁移,我的 Angular 应用程序无法构建:
bla.ts 中的错误:错误 TS2339:“可观察”类型上不存在属性“地图”。
我有以下进口:
如果我像这样更改导入,它会起作用:
但我不明白为什么......我想使用显式导入而不是导入所有运算符。
更新:正如一些答案指出的那样,我必须使用管道才能使用运算符。这是我的问题,因为我认为我仍然可以将运算符链接到可观察对象。
老式:
新风格
rxjs - 如何只使用 rxjs-compat 的一部分,或者编写一个自定义的 rxjs-compat?
我们已经更新了我们的项目以使用 Angular 和 Rxjs 6 并且一切正常。
我们还更新了代码以使用管道运算符,因此我们希望删除rxjs-compat
.
唯一的问题是我们的依赖项之一仍然使用 Observable 和 Subject 的旧导入语法。
有什么方法可以为这两个类提供我们自己的最小 rxjs-compat 吗?
该库没有对 Observable 和 Subject 做任何花哨的事情,也没有使用任何运算符,因此导入完整的 rxjs-compat 包似乎有点过头了。
angular - 迁移到 rxjs 6 gulp build.bundle.rxjs 时抛出错误
我正在从 rxjs 5.5 升级到 6.2.1。我浏览了代码库并进行了 rxjs 迁移文档中建议的所有更改,更改了导入、管道而不是链接等。当我运行我npm install
的build.bundle.rxjs
脚本时,在 rxjs-compat 的 fetch 上抛出错误并说它正在加载 rxjs/ Rx,我在我的代码库中找不到参考。有没有其他人在升级他们的 rxjs 时遇到过类似的问题?
编辑:
我发现错误的根源来自我的 node_modules 中的各种包。他们正在使用已弃用的导入路径。
angular - 将我的 Angular 项目从 5x 升级到 6x 后的问题
我刚刚按照通常的指南将我的 Angular 5 项目升级到 6。我已经更新了我的包并且还安装了 rxjs-compat 包并运行以下命令从 rxjs 5 迁移到 rxjs 6
我的 package.json 如下所示
我正在使用 Visual Studio 2017 并且错误列表中显示了许多错误
任何人都可以提供进一步的帮助和建议吗?
请看附件图片
我的项目属性如下所示
rxjs - 从 'rxjs' 导入并带有 'rxjs-compat' 作为附加依赖项不会使兼容的 Observables
rxjs 5-6 迁移说明的措辞,以及像这样的博客文章暗示,只需将“rxjs-compat”作为我们项目的依赖项与“rxjs”一起,然后从“rxjs”导入 Observables、Subjects 等将与传统运营商兼容。例如。Observable.of(3, 4, 5).concatMap(num => {/*...*/})
. 然而,这对我们来说似乎并非如此。如果我们直接从 'rxjs-compat' 导入,事情确实会按预期工作,这似乎不是预期的迁移路径,并且也很不方便,因为 'rxjs' 的 TypeScript 声明更完整,并且两者都有导入在同一个文件中的 rxjs' 和 'rxjs-compat' 将来清理起来会有点烦人。是否有额外的步骤,或者正在从“rxjs-compat”导入
typescript - TS rxjs-compat 不支持原型运算符?
我正在按照此迁移指南从rxjs 5.5.5 更新到 6 ..**。从本文和许多其他帖子中可以看出,只要在我的项目中使用rxjs-compat就可以逐步迁移。更糟糕的是,它似乎对其他人都有效。我的理解是rxjs-compat将允许我同时使用可管道运算符和可观察原型运算符。但要么这不是rxjs-compat的情况,要么是有问题。
所以我的期望是,例如,当observable从rxjs
. 但我收到以下错误“错误 TS2339:‘可观察’类型上不存在属性‘地图’。” . 这当然意味着打字不正确。
从 vesrion开始,我已经尝试了不同版本的 typescript ( 2.7.2
, 2.9.1
, 3.1.1
) 以及rxjs和rxjs -compat。还尝试使用tsconfig 路径并将rxjs 别名为 rxjs-compat,但这还不够。6.0.0
latest
所以说实话,它真的支持原型操作符吗?我需要一些额外的配置吗?一些匹配的版本?任何事物?
如果需要,我可以提供其他信息(package.json、tsconfig 等)。
这是可以下载进行测试的设置。在本地我只是运行tsc index并且它失败了