如何将应用程序根模板组件与应用程序中的其他组件同步

时间:2019-07-16 07:52:04

标签: ionic4

我将产品添加到愿望清单中,并将该产品存储在本地存储中的组件和根组件中,我显示了愿望清单产品的总数。问题是,当我在愿望清单中添加新产品时,它将存储在本地存储中,并且不会更新根组件中的愿望清单产品总数。 This is the actual view of the core issue

1 个答案:

答案 0 :(得分:1)

角度服务

您需要做的是生成一个服务,该服务存储“收藏夹”数据,然后将其指向。乔希对此作了很好的介绍:

基本上,高级概述是您生成一个服务,该服务可以注入到要与之一起使用的每个组件/页面中,然后可以为它们提供服务。

例如,您可能提供登录服务,以便找出用户是否从应用程序中的任何位置登录,或者您是否需要分析服务,或者它可能更具体,例如编写体重转换类您可以将其应用于许多页面。

自定义事件

另一种替代方法是让“收藏夹”按钮发出一个自定义事件,菜单项可以监听该事件以更新其自己存储的收藏夹值。

本文对此进行了很好的介绍:

高级概述是您从一个页面发布事件:

this.events1.publish('my-message', '? Hello from page1!');

然后您在另一个页面/组件上处理该事件:

this.events2.subscribe('my-message', (data) =>{
  console.log(data); // ? Hello from page1!
});