首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用angularJS播放base64编码的音频时出现错误:[$interpolate:noconcat]

使用angularJS播放base64编码的音频时出现错误:[$interpolate:noconcat]
EN

Stack Overflow用户
提问于 2016-04-17 03:53:39
回答 2查看 1.2K关注 0票数 0

因此,我正在尝试让我的web应用程序播放base64编码的音频。这是我使用的代码:

代码语言:javascript
代码运行次数:0
运行
复制
<audio controls="controls" autobuffer="autobuffer" autoplay="autoplay">
        <source  ng-src="data:audio/mp3;base64,{{article.MOI}}">
</audio>

问题是我得到了这个错误:

代码语言:javascript
代码运行次数:0
运行
复制
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编码的图像:

代码语言:javascript
代码运行次数:0
运行
复制
<img ng-src="data:image/JPEG;base64,{{article.Image_Front}}" >

其中,当我注释掉音频部分时,图像能够正确显示。此外,如果我用实际的base64编码字符串替换对article.MOI的调用,就可以播放音频。我已经看过并尝试过使用

代码语言:javascript
代码运行次数:0
运行
复制
$scope.recordings = $sce.trustAsResourceUrl(myData);

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

EN

回答 2

Stack Overflow用户

发布于 2016-06-16 17:27:37

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

代码语言:javascript
代码运行次数:0
运行
复制
$scope.test = "data:audio/mp3;base64," + $scope.article.MOI

并将此变量绑定到DOM。

票数 0
EN

Stack Overflow用户

发布于 2016-07-06 01:53:45

我在使用Firebase播放音频时遇到了同样的问题。这对我很有效。

在我的控制器中我有:

代码语言:javascript
代码运行次数:0
运行
复制
$scope.testAudio =  $sce.trustAsResourceUrl("data:audio/mp3;base64," + $scope.article.MOI)

在我的HTML中:

代码语言:javascript
代码运行次数:0
运行
复制
<audio controls class="playback" ng-src="{{testAudio}}"></audio>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36668974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档