Ich mache gerade eine Art Funkzentrale. Ich habe alle Stationsinformationen in einem Dienst. Ich liste alles in der HTML-Datei auf, nachdem ich es durch die Komponente bekommen habe.Wiedergabe verschiedener Audios auf Knopf klicken Angular
Auf Knopfdruck wird die Sender-URL in eine Variable geschrieben, die dann in eine Audio-Quelle geladen wird. Diese Audioquelle ist geladen und beginnt mit der Wiedergabe.
Ich habe ein paar Probleme, obwohl alles in 1 Taste. Wenn ich die URL in der Variablen zuerst mit 1 Schaltfläche lade und mit einer anderen aktiviere, funktioniert es. Aber wenn ich versuche, beide in 1-Taste zu setzen, scheint es die Variable nicht zu aktualisieren.
Meine Komponente:
audio: any= new Audio();
audios: any[];
audiosource: string = '';
//methods
GetStation()
{
console.log('works');
this.audio.src = this.audiosource;
this.audio.load();
this.audio.play();
}
//constructor
constructor(private soundwaveService: SoundwaveService)
{
this.audios = soundwaveService.getStations();
}
Mein html:
<div *ngFor="let audio of audios, let i = index">
<div (click)="audiosource=audio.url">
<button (click)="GetStation()">{{audio.station}}</button>
</div>
</div>
--- {{audiosource}} ---
Sie möchten die 'audio.url'-Spur wiedergeben, wenn Sie auf die Schaltfläche klicken, richtig? – Abrar