How to delete items of nested objects // ERROR TypeError: "_v.context.$implicit is undefined"

How to delete items of nested objects // ERROR TypeError: "_v.context.$implicit is undefined"

我有一个对象列表,用 ngFor 和 ngSwitchCase 显示。向对象添加项目以及删除对象本身都没有问题。 但是如果我尝试删除嵌套在对象内的项目,则会出现此错误:

ERROR TypeError: "_v.context.$implicit is undefined"

对象 is/seems 不见了,因为信息没有显示,但是 div 又名 design/rendering 和 ngFor 搞砸了。 (我正在使用 Angular8。)

这是我的问题的精简版: https://stackblitz.com/edit/angular-jjsvzh

在 Stackblitz 示例中,我遇到了另一个错误,尝试相同的方法:

ERROR TypeError: "this.articles[0].content[boxId] is undefined"

我只是不明白为什么当我删除对象时,"delete" 工作得很好,但其他时候却没有。

closeContentBox(boxId) {
    console.log('I close contentBoxes');
    delete this.articles[0].content[boxId];
  }

  removeItemBox(boxId, itemId) {
    console.log('I remove itemBoxes');
    delete this.articles[0].content[boxId].data.items[itemId];  
  }

可能相关,但没有帮助:

试试这个:

 removeItemBox(boxId, itemId) {
// delete this.articles[0].content[boxId].data.texts[itemId];  
this.articles[0].content[boxId].data.texts.splice(itemId, 1);}  

同样在 html 中,像这样更改第一个参数:

<div class="removeButton" (click)="removeItemBox(boxId, itemId)