簡體   English   中英

如何在javascript中的現有對象屬性上定義setter

[英]how to define a setter on existing object property in javascript

如何在javascript ES6概念中為現有對象屬性定義設置器。 目前,我已將值直接分配為true,我想通過使用setter來實現相同的目的。

HTML:

<form #Form="ngForm" novalidate (ngSubmit)="saveForm()">
<label class="radio-inline pr-3">
<input type="radio" name="isCitizen" required value="yes [(ngModel)]="formList.isCitizen" #isCitizen="ngModel"> Yes
</label>
<label class="radio-inline">
<input type="radio" name="isCitizen" required value="no"[(ngModel)]="formList.isCitizen"#isCitizen="ngModel"> No
</label>
<form>

零件:

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

 @Component({
 selector: 'my-app',
 templateUrl: './app.component.html',
 styleUrls: [ './app.component.css' ]
 })
 export class AppComponent  {
 name = 'Angular';
 formList: FormModel = new FormModel();

 saveForm(){ //how to set the value to object using setter
 if(this.formList.isCitizen === 'yes'){
 this.formList.isCitizen = true;
 }else{
 this.formList.isCitizen = false;
 }
 }
 }

 export class FormModel {
 isCitizen : boolean;
 }

演示

在打字稿中使用

export class FormModel {
    private  _isCitizen : boolean;

    set isCitizen(isCitizen:boolean) {
        this._isCitizen = isCitizen;
    }
    get isCitizen():boolean {
       return this._isCitizen ;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM