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;
  }
}

相关内容

热门资讯

玩家交流!小巷娱乐开挂脚本软件... 玩家交流!小巷娱乐开挂脚本软件,小巷娱乐好像是真的有开挂解密神器1、用户打开应用后不用登录就可以直接...
专业讨论!朱雀吴江三缺一透视挂... 专业讨论!朱雀吴江三缺一透视挂脚本软件,朱雀吴江三缺一其实有透视挂了解脚本1、超多福利:超高返利,海...
解密关于!朋友贵州麻将透视挂脚... 解密关于!朋友贵州麻将透视挂脚本软件,朋友贵州麻将本来是真的有透视挂了解技巧解密关于!朋友贵州麻将透...
推荐一款!大同麻将开挂脚本软件... 推荐一款!大同麻将开挂脚本软件,大同麻将竟然真的有开挂辅助教程;推荐一款!大同麻将开挂脚本软件,大同...
我来教教大家!边锋运城麻将透视... 我来教教大家!边锋运城麻将透视脚本软件,边锋运城麻将竟然真的是有透视有挂工具进入游戏-大厅左侧-新手...
实测交流!徽友开挂脚本软件,徽... 实测交流!徽友开挂脚本软件,徽友确实是真的有开挂解密脚本1、该软件可以轻松地帮助玩家将徽友辅助器有哪...
玩家必看科普!闲来贵州麻将透视... 玩家必看科普!闲来贵州麻将透视挂脚本软件,闲来贵州麻将都是是有透视挂科普神器1、玩家可以在闲来贵州麻...
重大推荐!指尖四川麻将开挂脚本... 重大推荐!指尖四川麻将开挂脚本软件,指尖四川麻将果然是有开挂关于软件1、玩家可以在指尖四川麻将线上大...
六分钟了解!乐乐围棋入门透视挂... 六分钟了解!乐乐围棋入门透视挂脚本软件,乐乐围棋入门竟然真的是有透视挂科普app1)乐乐围棋入门辅助...
必备科技!夜猫麻将开挂脚本软件... 必备科技!夜猫麻将开挂脚本软件,夜猫麻将竟然真的是有开挂解谜攻略1)夜猫麻将免费钻石:进一步探索夜猫...