Angular 5共享功能&两个组件之间的变量

时间:2018-01-11 20:19:51

标签: angular ionic-framework ionic2 ionic3 angular5

我需要一个用于两个独立组件的全局函数。 我正在主HTML页面上使用选择器加载两个角度组件。 一个具有功能按钮,其功能也必须影响另一个组件中的内容。

我意识到这不容易做到......你们怎么设置共享功能&两个角度分量之间的变量? 我正在尝试创建一个单独的按钮,可以在两个单独的组件中加载选项卡内容。 是使用角度局部存储解决方案来存储某些功能和变量吗?

提前致谢,

1 个答案:

答案 0 :(得分:2)

服务非常简单。

export class ExampleService {

   public sharedVariable: any;

   public sharedFunction() {
       // your implementation
   }
}


export class Component1 {
    public constructor(private service: ExampleService) {
        this.service.sharedFunction();
        this.service.sharedVariable;
    }
}

export class Component2 {
    public constructor(private service: ExampleService) {
        this.service.sharedFunction();
        this.service.sharedVariable;
    }
}

在使用公共类的情况下,您将获得sharedVariable的两个不同引用,如果您更改第一个组件中的变量值,它将不会影响第二个组件,但如果您使用{ {1}}默认情况下,服务是单一的角度,因此您将在两个组件中获得相同的值,但只是从任何地方更改值。

service

希望有所帮助。