使用Input()在父子之间进行绑定的一种方法

时间:2019-09-12 14:45:13

标签: angular data-binding

我正在尝试制作一个模式,以显示来自父级的一些数据,但是我只想在确认模式内部的形式后才在发出数据时批准该更改,但是由于我使用的是2向绑定,用户可能进行的任何更改都会影响父级,即使用户未提交表单

所以我想出的最好的解决方案是使用单向绑定,但是我不熟悉如何使用Input()做到这一点,因为我仅将其用于2向绑定

<div class="modal-body">
   <app-modal (submitEmitter)="submitted($event)" [dataPassed]="passedData"></app-modal>
</div>




 _dataPassed: Item;
  @Input() set dataPassed(value: Item) {
    if (value) {
      this._dataPassed = value;
    }
  }

1 个答案:

答案 0 :(得分:0)

@Component({
  selector: 'app-modal',
  templateUrl: './modal.component.html',
  styleUrls: ['./modal.component.scss']
})
export class ModalComponent implements OnInit {
   @Input() dataPassed: any; // This value can be used anywhere in this class
   @Output() submitEmitter = new EventEmitter<Event>(); //Use this emitter to send data after approval
}