在2017年的Visual Studio社区中,我开始使用“Ionic 2 - Sidemenu”模板。 (Angular2,Ionic2,TypeScript)我想使用html5音频元素并播放本地存储的mp3文件,所以我在html中有这个
<ion-content padding>
<ion-card>
<ion-card-header>
Play Mp3
</ion-card-header>
<audio controls></audio>
<br />
<button ion-button round (click)="setSrc()">Load File</button>
</ion-card>
</ion-content>
我在Windows 10 PC上以Windows-x86,Local Machine启动应用程序。代码在按钮单击时加载音频文件以确保已触发deviceReady。这就是.ts文件中的所有内容。
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
@Component({
selector: 'page-page1',
templateUrl: 'the-player.html'
})
/////////////////////////////////////////////////////////////
export class ThePlayer {
constructor(public navCtrl: NavController) {
}
setSrc() {
var myPlayer = document.getElementsByTagName('audio')[0];
// the intellisense verifies that this path is correct
myPlayer.src = '../../audio/Capitolo_7s.mp3'; // no Cannot-set-src-of-undefined error is thrown
}
onLink(url: string) {
window.open(url);
}
}
在setSrc()运行之后,它会显示在UI中播放器的播放按钮旁边。
不支持此类型的音频文件
我需要能够控制播放的速度,并且没有在cordova插件上找到该方法,所以这就是我想要使用音频元素的原因。我知道mp3文件很好。我可以在文件资源管理器中点击它,它可以正常播放。
想法?