Как изменить свойства кнопки

0

У меня есть кнопка, как

Мой шаблон,

  <div *ngFor="let detail of details"  class = "col-sm-12">
    <div class="pic col-sm-1">
    <img  height="60" width="60" [src]='detail.image'>                 
 </div>
  <div class = "col-sm-6">
  <a><div class = "fname col-sm-12">
    {{detail.firstname}}
 </div></a>
  <div class ="phone col-sm-12">
    {{detail.address}}
 </div>
 </div>
   <button  (click)='send(button,detail.profile_id)' #button>{{req}}</button>
   <hr class= "col-xs-12"></div>

Я хочу изменить свойства кнопки в соответствии с определенными условиями, следующим образом

ngOnInit(){

this._service.getList()
.subscribe(
      response => {
         this.details = response;
          this.details.forEach((name,index)=>{
          if(this.details[index].approved == null){
            button.innerHTML = "Add frnd";
            button.disabled = true; 
          }
          if(this.details[index].approved == 1){
             button.disabled = true;

         }
          if(this.details[index].status == 1){
              button.innerHTML = "Pending";
          }

          });
      }
  }

Я не могу использовать эту функцию здесь, поскольку она зарезервирована для другого свойства, может ли кто-нибудь предложить мне помощь в этом отношении.........

  • 0
    Хорошо. Вы используете ngFor в шаблоне?
  • 0
    Подождите, есть только одна кнопка, с которой вы имеете дело?
Теги:
angular

1 ответ

0
Лучший ответ
<button  (click)='send(button,detail.profile_id)' [disabled]="isDisabled">{{req}} {{innerHTML}}</button>

в компоненте,

{
 isDisabled:boolean:false;
 innerHTML:string='';

this._service.getList().subscribe((response) => {
      this.details = response;
      this.details.forEach((detail)=>{   //<----you are iterating through each object of this.details list.

      if(detail.approved == null){       //<----please note that I changed each if condition with respect to forEach

        //button.innerHTML = "Add frnd";
        //button.disabled = true; 

        this.innerHTML="Add frnd";
        this.isDisabled=true;
      }
      if(detail.approved == 1){
         //button.disabled = true;

          this.isDisabled=true;

     }
      if(detail.status == 1){
          //button.innerHTML = "Pending";

          this.innerHTML="pending";
      }

      });
  }

}

  • 0
    Большое спасибо микроникам
  • 0
    Добро пожаловать !

Ещё вопросы

Сообщество Overcoder
Наверх
Меню