我提供的服务具有声明为以下内容的公共财产:

public indiceUsuarios: IndiceUsuario[] = [];

更改数据并执行操作后,我在同一类中使用以下方法重新加载该属性:

  private reloadIndiceLocal(indiceUsuarios: IndiceUsuario[]): void {
    let self = this;
    self.indiceUsuarios.length = 0;
    self.indiceUsuarios.push(...indiceUsuarios);
  }


我将此服务注入另一个组件,并使用以下行ngOnInit()this.indiceUsuarios = this.sesionService.indiceUsuarios;上引用该属性(此本地属性在此之前未初始化)。然后,我在此组件的视图上使用此本地属性。当我向数组中添加元素时,它显示得很好并且正在改变。

问题是,如果我从数组中删除元素,它们将继续显示(视图未更新以反映这些更改)。

有任何想法吗?

最佳答案

好吧,在我的情况下,事实证明我依赖的是一个单例,该单例写得不好并且没有充当单例(有效地将我的视图链接到一个对象,该对象具有与我要更改的实例不同的实例)。我的错。

08-19 00:52