为什么我会得到同一服务的两个不同实例?

时间:2020-12-30 11:29:56

标签: angular dependency-injection

我有具有 public x 属性的 ExerciseService:

@Injectable({
  providedIn: "root",
})
export class ExerciseService extends CrudService<IExercise> {
  public x:number = 0;
  exercisesByGroups: IGroupExercises[] = [];
  constructor() {
    super(ResourseApi.exercise, Resourse.exercise);
  }
}

在 ExerciseContainerComponent 中我在构造函数中修改它:

this.exerciseService.x = 4;

当我在 TrainingContainerComponent 和 console.log x 中注入 ExerciseService 时,我得到 0 而不是 4。

为什么会这样?这是否意味着我创建了两个 ExerciseService 实例?如何预防?

0 个答案:

没有答案