在组件之间使用静态变量

时间:2017-07-13 01:57:51

标签: angular typescript

我有一个数据存储TypeScript文件,它有几个String数组:

export const servicesData =
    [
        'test',
        'test',
    ];

export const surgeonsData =
    [
        'test',
        'test',
    ];

然后我有另一个组件,我一次多次实例化。我想以静态方式使用数据存储数组,因此我可以在所有实例中使用它们,而无需每次都读取。

这是我现在所拥有的快速摘要。每个预订组件都需要使用data-model.ts文件中的数组,而不是每次都重新读取它。

import { surgeonsData, servicesData } from 'app/data-models.ts'

@Component({
    selector: 'booking',
    template:
        `
          <div *ngFor="let s of surgeons">
            {{s}}
          </div>
        `
})


export default class BookingComponent {

    surgeons = surgeonsData;
    services = servicesData;

    constructor() {}


}

因此,在我的上述示例中,每次创建新组件时,surgeonData都会保存到外科医生变量中。我希望每次只有一个变量可以访问每个组件而不是这样做。

1 个答案:

答案 0 :(得分:0)

使用服务可以访问全局可用的静态变量。尝试在服务之外执行此操作将遇到分区和更改检测的问题。