首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >离子4-用BehaviorSubject接收变量更新

离子4-用BehaviorSubject接收变量更新
EN

Stack Overflow用户
提问于 2019-11-08 12:02:36
回答 1查看 205关注 0票数 0

在家里,我有一个产品列表,点击打开产品模式的按钮,以添加到购物车。添加该金额时,该金额将显示在图标旁边。我希望在app.component中关闭此模式以更新页脚中的图标。我需要用没有刷新就关闭的模态值更新这个购物车。

servico.ts

代码语言:javascript
运行
复制
public totalShop: BehaviorSubject<String>;

 constructor() {
    this.totalShop = new BehaviorSubject('0');       
 }

 setTotalShop(val) {    
    this.totalShop.next(val);    
  }

  clearTotalShop() {
    this.totalShop.next('0');
  }

  getTotalShop(){    
    return this.totalShop.asObservable();
  }

modalProduto.ts

代码语言:javascript
运行
复制
fnShop(){
    quantidade = quantidade +1
    this.servico.setTotalShop(quantidade)
 }

app.component.ts

代码语言:javascript
运行
复制
quantshop;
 subscription: Subscription;

 ngOnInit(): void {
   this.subscription = this.servico.getTotalShop().subscribe(val => this.quantshop = val);
   console.log(this.quantshop)
}

app.module

代码语言:javascript
运行
复制
  providers: [servico]

imagem

EN

回答 1

Stack Overflow用户

发布于 2019-11-08 12:14:41

我想你用的是角质材料徽章。

您可以在html中使用角异步管道。

代码语言:javascript
运行
复制
<mat-icon [matBadge]="global.getTotalShop() | async">icon</mat-icon>

您需要使服务公开,才能在html中访问它,或者在分配给component.ts的BehaviourSubject中设置另一个变量。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58766225

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档