问题标签 [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 回答
71 浏览

angular - What is the best practice to change a single object in Angular component in a reactive way

Assuming I have an http request to get users:

I subscribe to this observable using async pipe in my template:

I want to change an email of a single user with another http request, but keep a single subscription. The problem is that the http request that changes the email hasn't been defined at the point I created users$ observable. what I did is:

As you can see I subscribe to update_user using toPromise(). I can not combine this request ahead since it is not defined until it is requested. I have been searching all over the internet but couldn't find an agreed best practice.
How do you think it should be done? Thanks

0 投票
2 回答
1824 浏览

angular - ngIf Async Pipe 作为值,只有空检查

我有一个可观察对象,我想在 ngIf 中创建一个变量,并且仅在值为 null 时返回 false(可观察对象返回一个数字)

我需要明确检查 null 因为我的 observable 可以返回 0 作为触发 else 块的值。

我试过以下

我目前看起来不太优雅的解决方案是

我正在使用 Angular 10。

0 投票
1 回答
181 浏览

angular - 行为主题不会在更改 Async Angular 10 时更新

我有一个Observable在我的组件中显示的列表。但是当我通过后端更新列表时,列表不会async在我的组件视图中更新..

我的服务(存储列表的位置):

component(我显示列表的地方)

我在更新列表(创建新项目)时调用此方法(来自服务的方法):

但是我仍然需要刷新页面才能看到更改

0 投票
1 回答
413 浏览

angular - 角度异步管道不适用于图像源更新

在这个 Angular 组件中,我得到一个可观察的用户对象,我尝试在 NgInit 上验证是否定义了个人资料图片 URL。如果没有,我想为此设置一个占位符。但由于某种原因,我在 ngOnInit 中所做的更改为时已晚。图像源设置不正确,因此结果是显示替代文本。我认为异步管道将帮助我在新设置时获取图像?有人可以帮助我更好地理解这种情况吗?:)

在 HTML 中,我只是用异步管道调用用户个人资料图片。

这就是我得到的user$,它来自 UserProfileData 的对象:

0 投票
1 回答
173 浏览

angular - 如何将元素推送到可观察和更新 UI

有人可以帮我解决这个问题吗?我开始学习 angular8 中的 observables 和异步管道。

我正在尝试向我的 observable 添加一个元素并更新我的 UI。此刻我有这个,它在我的数组的开头和结尾添加了我的元素。我究竟做错了什么?

在我的组件中:

服务:

0 投票
2 回答
551 浏览

angular - 错误:InvalidPipeArgument:管道“AsyncPipe”MatTable Angular 11 的“[object Object]”

我正在尝试将 Angular MatTable 与异步管道一起使用。我从 RESTAPI 获取数据作为 Observable。但是,当我以这种方式使用 ([dataSource] = "dataSource | async") 时,我得到了上面提到的错误。

存储库.service.ts:

联系人.component.ts:

联系人.component.html:

错误

是屏幕截图。正如您在右下角看到的那样,数据被提取但未处理到表中。

任何人都可以帮助解决这个问题吗?

0 投票
1 回答
432 浏览

angular - 为什么在带有异步管道的 Angular 模板中未检测到 Subject.next () 发射?

有以下代码,我想知道为什么 Subject.next(1)在模板中看不到发射,而BehaviorSubject.next()发射是可见的。

我知道将它包裹在里面可以setTimeout()修复它,但我想理解它。

我似乎Subject.next()同步的,async管道没有接收/标记检查。

https://stackblitz.com/edit/angular-ivy-crnfgc?file=src/app/app.component.ts

0 投票
1 回答
284 浏览

angular - 我可以使用异步管道将 observable 解包到视图变量而不是使用 ngIf 吗?

我知道我可以使用*ngIf="obs$ | async as obs",但是如果我需要在 obs 为 false 时使用该值怎么办?

https://stackblitz.com/edit/angular-zkbemb?file=src%2Fapp%2Fapp.component.html

我希望该行读取 observable 是错误的,而不是块消失。我知道我可以使用 else 块,但我需要将readonly$标志解包到视图变量readonly,并且不想在 else 块中重复我的整个模板。我想不出任何不涉及订阅组件的方式,但这并不是唯一一个发现自己想要在模板中使用的方式#boolFlag = boolObs$ | async

0 投票
2 回答
311 浏览

angular - 异步管道传递的角度输入数据在子组件中为空,但在父组件中不为空

我有一个奇怪的案例,我无法通过并且不知道它是如何发生的,所以我在SiteComponent 这里命名了父组件打字稿逻辑:

这里是模板文件代码:

如您所见,它由几个子组件组成,这些子组件依赖于异步管道,图表工作完美,但表格存在问题。

table.ts

在这里我收到一个错误,因为console.log(this.tableData)返回 null,但是 tableData 永远不会为 null,siteTemplate$因为我通过添加 tap 并记录这个值来检查它,它总是显示为对象。

0 投票
0 回答
21 浏览

angular-ng-if - 当我订阅它时,带有 observables 的 ngif 不起作用

https://stackblitz.com/edit/planificador?file=src/app/planificador/components/cabecera/cabecera.component.html

我只想在另一个组件中发生某些事情时才在组件中显示段落的文本,为此我使用中间服务来捕获该内容的值。

cabecera.component.html

cabecera.component.ts

}

情况是,尽管从historyo.component 我双击grig 并且mostrarHistorico 的值为true,因此它们登录到cabecera.component,但ngIf 没有完成它的工作,它总是对我隐藏段落。

日志

有什么想法吗?

谢谢