A continuación se muestra el contenido html que crea el elemento de audio HTML 5:
<audio id ="audio2"controls="controls" autoplay="false" (canplay)="CanPlay($event)"> <source src="http://localhost:51657/Audio/1" type="audio/mp3"> </audio>A continuación se muestra el componente en el que estoy tratando de establecer la hora actual en algún valor predeterminado, el código comentado funciona bien, sin embargo, sugiera cómo hacer lo mismo de la manera Angular2.
import { OnInit, Output,Component, Injectable, EventEmitter } from '@angular/core'; declare let $: any; @Component({ selector: 'audio-tag', templateUrl: './audio-tag.component.html', }) @Injectable() export class AudioComponent implements OnInit { @Output() canplay: EventEmitter<any> = new EventEmitter(); audio:any; playBtn: any; pauseBtn: any currentTime:any; timer:any; duration:any; sound: any; ngOnInit(): void { // $('#audio2').bind('canplay', function() { // this.currentTime = 20; // }); } CanPlay(){ console.log('canplay'); this.currentTime=10; this.audio.currentTime = 20; } }AudioComponent debe estar decorado con @Component({...}) no @Injectable()
@Component({ selector: 'my-audio-player', templateUrl: ` <audio id ="audio2"controls="controls" autoplay="false" (canplay)="CanPlay($event)"> <source src="http://localhost:51657/Audio/1" type="audio/mp3"> </audio> ` }) export class AudioComponent implements OnInit { ... }