问题标签 [rxjs7]

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.

0 投票
1 回答
5387 浏览

angular - TS7016:找不到模块“rxjs”的声明文件

我已经升级了我的 Angular App 依赖项并成功安装了它们。不幸的是,我现在无法使用“rxjs”。下面是 IDE 返回的错误。

TS7016:找不到模块“rxjs”的声明文件。“C:/Path/to/project/node_modules/rxjs/dist/cjs/index.js”隐含了“任何”类型。尝试npm i --save-dev @types/rxjs它是否存在或添加一个包含 `declare module 'rxjs' 的新声明 (.d.ts) 文件;

下面是我的package.json

在运行时,ng serve我收到几个与类型相关的错误,rxje例如在下面

商店中不存在属性“管道”

对象“参数”的类型未知

是否可以在 Angular v11 应用程序中使用 rxjs v7?

0 投票
0 回答
173 浏览

angular - RXJS 7 - TS2693:'AjaxDirection' 仅指一种类型,但在此处用作值

我升级了我的 Angular 11 项目RxJS 7,在网络风暴中它建议我更改一些Subject导入,一旦我更新这些导入,我就会遇到错误

有人解决了这个试图迁移到的问题RxJs7吗?

0 投票
1 回答
713 浏览

angular - 未找到模块:错误:包路径 ./index 未从包 node_modules/rxjs 导出(请参阅 /node_modules/rxjs/package.json 中的导出字段)

我正在RxJs7我的 Angular 12.2.0 项目中尝试,似乎 rxjs 运算符和方法的路径发生了变化。

我收到以下错误

请注意,上述错误来自使用 rxjs7 的库

0 投票
1 回答
252 浏览

angular - 巢穴。TS7016:找不到模块“rxjs”的声明文件

TS7016:找不到模块“rxjs”的声明文件。“C:/Path/to/project/node_modules/rxjs/dist/cjs/index.js”隐含了“任何”类型。如果存在,请尝试 npm i --save-dev @types/rxjs 或添加包含 `declare module 'rxjs' 的新声明 (.d.ts) 文件;

我已将 NestJs 更新到版本 8,将 rxjs 更新到 7。之后,导入停止工作。之前在node_modules/rxjs文件夹中有一个index.ts文件(第6版)。安装第 7 版时,将其删除。

0 投票
1 回答
41 浏览

rxjs - 如何从 RxJs 6.x 复制延迟?

的行为delay在 RxJs 7 中发生了变化。虽然我理解变化的原因,但它对于我用来模拟无线 API 延迟的演示项目很有用。在 RxJs 6 中,下面的代码只会在 5 秒延迟后记录到控制台,但在 7 中它会立即记录(7 不再等待空 observable 的延迟)。有没有办法在 RxJs 7 中复制以下内容?

请参阅下面的 Stackblitz 示例。

RxJs 7(无延迟):https: //stackblitz.com/edit/rxjs-yx19nb?file= index.ts RxJS 6(5 秒延迟):https ://stackblitz.com/edit/rxjs-8rmhov?file=索引.ts

0 投票
1 回答
367 浏览

angular - 如何在 Angular 13 中使用 RxJS 7 为 lastValueFrom() 设置超时配置?

来自RxJS开发团队的引述:

为了解决所有这些问题,我们决定弃用toPromise(),并引入两个新的辅助函数来转换为 Promises。

使用两个新功能之一

作为不推荐使用的 toPromise()方法的替代,您应该使用两个内置静态转换函数之一firstValueFromlastValueFrom....

在我的情况下,我向服务器发送一个获取请求以检查服务器是否可用。main 函数(在本例中为ngOnInit())在 HTTP 响应或错误返回之前不会更进一步。

本文的这一部分,他们建议将 a 添加timeoutlastValueFrom()函数中,应将其添加为 config config?: LastValueFromConfig<D>

我的代码:

如何设置此配置并将其传递给函数?

0 投票
1 回答
135 浏览

rxjs7 - 订阅显示已弃用

我不知道到底发生了什么,但订阅显示已弃用,以下是消息

顺便说一句,我正在使用 Angular13

0 投票
0 回答
27 浏览

typescript - rxjs - `share` 没有按预期工作

我有以下助手 rxjs 运算符:

我对此运算符也有以下规范:

由于某种原因expectAsync(observable.toPromise()).toBeResolvedTo(expectedValue)失败,因为observable被解析为 undefined 而不是expectedValue. 我也尝试过lastValueFromtoPromise但没有区别。在从 rxjs 6 切换到 7 之前,我有以下定义shareResetOnError

它按预期工作,规范没有失败。为什么observable.toPromise()使用 rxjs 7 运算符无法解析为预期值?

0 投票
0 回答
59 浏览

angular - 在 Angular 项目中无法识别 rxjs 7

在我的 service.ts

在我的 package.json 我得到了这个

我已经尝试过其他形式来导入 rxjs,但错误总是一样的。我不知道问题是否是因为我正在使用新版本的 angular cli 我希望任何人都可以帮助我

在此处输入图像描述

0 投票
0 回答
52 浏览

angular - rxjs7 中的 isIterable 和 isPromise

在 rxjs 6 中,我曾经:

使用 rxjs 7 我得到:

错误:找不到模块:错误:包路径 ./internal-compatibility 未从包 .../node_modules/rxjs 导出(请参阅 .../node_modules/rxjs/package.json 中的导出字段)

我如何在 rxjs 中使用isPromise和?isIterable它们似乎不再被导出,但它们仍然是 rxjs 代码的一部分:

https://github.com/ReactiveX/rxjs/blob/master/src/internal/util/isPromise.ts

https://github.com/ReactiveX/rxjs/blob/master/src/internal/util/isIterable.ts