问题标签 [async-pipe]

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 回答
57 浏览

angular - ngFor 中嵌套异步的最佳实践?

假设我有一个汽车清单:

我在模板中渲染它们:

在该模板内部,我想从返回可观察对象的方法中获取一些动态图像路径:

对于状态管理和存储,我使用的是 Firebase。我所有的图像都存储在一个存储桶中,我可以通过为我的服务提供一个 carId 来获取它们,该 carId 使用它来获取下载 URL。

我想避免在第一次保存文件时使用 downloadURL 更新 Firestore,因为我会将它们存储在子集合中,并且由于 Firestore 的性质,将它们从那里拉出来已经很痛苦。

有没有办法更有效地做到这一点?如果列表开始增长,上面的代码肯定会让浏览器爬起来……对吧?

0 投票
1 回答
123 浏览

angular - 带有异步管道的Angular ngFor,告诉参数具有空类型

此消息的原因是什么

当我尝试在循环中使用async管道时:ngFor

插槽为:

这是否意味着 Angular 猜测 Subject 可以返回一个空值?如何解决这个问题呢?

谢谢!

0 投票
1 回答
70 浏览

angular - 当 ngModel 值改变时如何使 observables 重新发射

我在我的 HTML 中使用了这些 observables,但是每次我的 HTML 控件的输入值发生变化时它们都不会重新发出(并且它们依赖于这些值,因此它们变得不同步)。例如,当这个更新 ( [(ngModel)]="mappedItem.selectedBusinessEntities") 然后selectedBusinessEntitiesOptionsAsDtos$ | async需要重新发出。请参见第二个 HTML 控件的选项是第一个 HTML 控件的选定选项。我是否需要以[(ngModel)]="mappedItem.selectedBusinessEntities"某种方式使该值成为可观察的?

HTML:

打字稿:

编辑:

尝试过像这样分解 ngModel:

ts:

令人讨厌的是,这确实会导致this.selectedBusinessEntitiesOptionsAsDtos$运行并发出新列表(使用调试器检查)。但是用户界面没有更新。这就是为什么我添加this.cdRef.detectChanges();但它没有用。

0 投票
1 回答
85 浏览

angular - 类型“组件”Angular 12 上不存在属性“<>”

我正在使用可观察的异步管道将对象“customer$”传递给我的 html 文件。该对象包含一个地址数组,我想用它来使用 *ngFor 创建一个列表;但是,我收到错误Property 'address' does not exist on type 'CustomersComponent'.是因为我引用了父 div 中的客户集吗?

这是我的 component.ts 和 html 文件,htmle 文件<p>{{ address.addressOne }}</p>中的行是导致错误的行

这是我给客户的模型-

这是地址的模型 -

0 投票
1 回答
55 浏览

angular - Observable 不更新视图

我正在尝试为 Angular 构建一个调度程序组件。但是,在创建事件时,视图似乎没有被更新。

角计划组件

我创建了一个最小的 StackBlitz 来演示这个问题

编辑

也用日历组件创建了一个 StackBlitz。请注意,标签正在更新,但日历上的 div 没有。

BehaviorSubject按预期更新视图,但在使用运算符后map,视图未更新。我已经完成了this.calendarEvents$.next(data),但这并不能解决核心问题,并且可以防止检测到属性更改。

编辑

我已经更新了代码,以便手动查找更改并明确强制触发更改检测器。然而,即使changeDetectorRef.detectChanges()只在必要时调用,视图仍然没有更新。

0 投票
2 回答
35 浏览

angular - 是否可以将 Angular 异步管道与 FullCalendar 一起使用?

如果可能的话,有没有人有一个如何在 FullCalendar 中使用异步管道的例子?例如像这样的东西?