javascript - HTML 使用 angularJS 播放 Base 64 编码的音频,错误为 : [$interpolate:noconcat]

标签 javascript angularjs html audio

所以我试图让我的网络应用程序播放 base64 编码的音频。这是我正在使用的代码:

<audio controls="controls" autobuffer="autobuffer" autoplay="autoplay">
        <source  ng-src="data:audio/mp3;base64,{{article.MOI}}">
</audio>

问题是我收到此错误:
angular.js:11655 Error: [$interpolate:noconcat] http://errors.angularjs.org/1.3.15/$interpolate/noconcat?p0=data%3Aaudio%2Fmp3%3Bbase64%2C%7B%7Barticle.MOI%7D%7D

奇怪的是,我还使用以下代码行显示 base64 编码图像:
<img ng-src="data:image/JPEG;base64,{{article.Image_Front}}" >

当我注释掉音频部分时,图像能够正确显示的位置。此外,如果我用实际的 base64 编码字符串替换对 article.MOI 的调用,我可以播放音频。我已经查看并尝试使用
$scope.recordings = $sce.trustAsResourceUrl(myData);

在我的 angularjs 代码中,但我仍然遇到相同的错误。

最佳答案

尝试在 Controller 中创建一个变量,如下所示:

$scope.test = "data:audio/mp3;base64," + $scope.article.MOI

并将这个变量绑定(bind)到 DOM。

关于javascript - HTML 使用 angularJS 播放 Base 64 编码的音频,错误为 : [$interpolate:noconcat],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36668974/

相关文章:

javascript - 相对于子 div 水平滚动滚动父 div

Google App Engine 中的 HTML

html - 在另一个 div 中 float div

javascript - 如何在 HTML 页面解析后将行号放在源代码中?

javascript - OO Javascript - 事件

javascript - 在同一个 View 中使用 ionic 的多个 Controller

javascript - 如何调用这个文件中的函数?

javascript - 使用跨浏览器兼容的 JavaScript 下载 PDF

angularjs - 从 angularjs 中的服务调用 Controller 函数

angularjs - ui-router sref 到孙子,参数在子项中