Angular 2+:从父模型中隔离子模型

时间:2017-10-06 11:27:02

标签: angular

我有这个父组件

@component({
 selector: 'parent',
 template: '<child [data]="data"></child>'
})
class Parent {
 private data = {
  name: 'name',
  age: 'age'
 }
}

这个子组件

@component({
 selector: 'child',
 template: '
  <form>
   <input type="text" [ngModel]="data.name" />
   <input type="submit" value="ok" (click)="onSubmit()"/>
  </form>'
})
class Child {
 @Input data;
 @output dataChange = new EventEmitter();

 onSubmit () {
  this.dataChange.emit(this.data);
 }

目前,当我在子输入中键入内容时,它会更改父组件中的data.name。有没有一种简单的方法可以避免这种情况,只有在提交表单时才在父级中更改data.name?或者我是否必须使用像不可变或对象克隆这样的库? 感谢

0 个答案:

没有答案