Angular深拷贝的子组件输入无法在UI上更改
创始人
2024-10-29 11:30:06
0

在深拷贝时,会创建一个新的对象,因此在 UI 上更改该对象的属性时,并不会影响原始对象。为了解决这个问题,请在子组件中使用 EventEmitter 来将更改传递回父组件,并在父组件中更新原始对象。

示例代码:

子组件:

import { Component, EventEmitter, Input, Output } from '@angular/core';

@Component({
  selector: 'child-component',
  template: `
    
  `,
})
export class ChildComponent {
  private innerValue: any = {};

  @Input() set value(value: any) {
    this.innerValue = { ...value };
  }

  @Output() valueChange = new EventEmitter();

  onModelChange() {
    this.valueChange.emit(this.innerValue);
  }
}

父组件:

import { Component } from '@angular/core';

@Component({
  selector: 'parent-component',
  template: `
    
  `,
})
export class ParentComponent {
  originalValue = { prop1: '', prop2: '' };
  
  onValueChange(newValue) {
    // 更新原始对象
    this.originalValue = newValue;
  }
}

相关内容

热门资讯

透视讲解!wepoker科技辅... 透视讲解!wepoker科技辅助器(透视)江西中至黑科技辅助软件(总是有辅助辅助器)-哔哩哔哩一、江...
透视中牌率!hhpoker德州... 透视中牌率!hhpoker德州透视挂(透视)潮汕激k脚本(果然是有辅助平台)-哔哩哔哩1、上手简单,...
透视好友房!竞技联盟透视插件(... 透视好友房!竞技联盟透视插件(透视)涂山山西辅助(本来真的有辅助辅助器)-哔哩哔哩1、涂山山西辅助透...
据了解!拱趴大菠萝十三水作必弊... 据了解!拱趴大菠萝十三水作必弊(透视)微信小程序辅助工具(其实是真的辅助软件)-哔哩哔哩1、用户打开...
透视讲解!约局吧德州有挂吗(透... 透视讲解!约局吧德州有挂吗(透视)多乐跑胡子辅助(一直是真的辅助平台)-哔哩哔哩1、让任何用户在无需...
透视脚本!wpk辅助(透视)7... 透视脚本!wpk辅助(透视)789大菠萝有挂吗(确实有辅助安装)-哔哩哔哩1、透视脚本!wpk辅助(...
透视挂!wepoker有透视功... 透视挂!wepoker有透视功能吗(透视)微信小程序微乐家乡辅助器(都是真的是有辅助软件)-哔哩哔哩...
近日!wepoker破解器有用... 近日!wepoker破解器有用吗(透视)福建天天开心辅助工具下载(果然有辅助下载)-哔哩哔哩1、完成...
透视总结!hhpoker一直输... 透视总结!hhpoker一直输有挂吗(透视)开心庄园辅助器免费(一直真的是有辅助平台)-哔哩哔哩1、...
透视教学!HH平台挂(透视)蜀... 透视教学!HH平台挂(透视)蜀山辅助工具(真是真的有辅助下载)-哔哩哔哩1、任何蜀山辅助工具透视是真...