Ionic / Angular — обновите имена меток ссылкой для изменения изображения

#angular #ionic-framework #ionic4

#angular #ionic-framework #ionic4

Вопрос:

Я очень новичок в Ionic / Angular, и мне очень сложно изменить метку с 0 1 2 на что-то другое, например, друг группы профиля. Я смог добраться до этого момента с помощью Google и YouTube, но я потратил несколько дней, пытаясь разобраться в изменении метки, и я не могу найти способ ее изменить. Я был бы очень признателен, если кто-нибудь сможет мне помочь. Заранее благодарю вас!

код в HTML-файле

 <ion-header [translucent]="false">
  <ion-toolbar color="primary">
    <ion-buttons slot="secondary">
    </ion-buttons>
    <ion-buttons slot="primary">
      <ion-button>
        <ion-icon slot="icon-only" name="search"> </ion-icon>
        <ion-icon slot="icon-only" ios="ellipsis-horizontal" md="ellipsis-vertical"></ion-icon>
      </ion-button>
    </ion-buttons>
    <ion-title>Pics</ion-title>
  </ion-toolbar>
</ion-header>
<ion-content>
  <button *ngFor="let imageButton of imageButtons; let i = index" (click)="onClick(imageButton)"
    class="button">{{i}}</button>
  <img src="{{myimage || '/assets/test1.png'}}" (click)="addEvent();" />
  <h1>78%</h1>
</ion-content>
 

Код в ts-файле

 export class IndividualstockPage implements OnInit {
imageSrc = '';
  messageText = '';
  imageButtons = [ {src:'/assets/Profile.png' } , 
  {src:'/assets/Group.png'}, 
  {src:'/assets/Friend.png'}]

  constructor() { }

  ngOnInit() {
  }
  onClick(imageNameObject) {
    this.imageSrc = imageNameObject.src;
    this.messageText = imageNameObject.name;}

};

 

Как вы видите на экране, он показывает 0 1 2, и я пытаюсь найти способ предоставить описание, а не снимок экрана с порядковым номером приложения / экрана

Комментарии:

1. Вы печатаете {{i}} и i получаете индекс. итак, у вас есть imageButtons 3 длины массива. таким образом, в основном вывод равен 0,1,2. а также вам не хватает name в imageButtons массиве

Ответ №1:

В Html

 <ion-header [translucent]="false">
  <ion-toolbar color="primary">
    <ion-buttons slot="secondary">
    </ion-buttons>
    <ion-buttons slot="primary">
      <ion-button>
        <ion-icon slot="icon-only" name="search"> </ion-icon>
        <ion-icon slot="icon-only" ios="ellipsis-horizontal" md="ellipsis-vertical"></ion-icon>
      </ion-button>
    </ion-buttons>
    <ion-title>Pics</ion-title>
  </ion-toolbar>
</ion-header>
<ion-content>
  <button *ngFor="let imageButton of imageButtons; let i = index" (click)="onClick(imageButton)"
    class="button">{{i}}</button>
  <img src="{{imageSrc || '/assets/test1.png'}}" (click)="addEvent();" />
  <h1>78%</h1>
</ion-content>
 

В ts

 imageButtons = [{src:'/assets/Profile.png',name:'Profile' } , 
  {src:'/assets/Group.png',name:'Group'}, 
  {src:'/assets/Friend.png',name:'Friend'}]

onClick(imageNameObject) {
    this.imageSrc = imageNameObject.src;
    this.messageText = imageNameObject.name;
}
 

Комментарии:

1. Спасибо, Рави, за предоставленный вклад. Если бы вы могли, пожалуйста, дать мне рекомендации о том, как изменить i на имя метки. Я устал, но либо я получаю все три картинки сразу, либо только одну.