2
我使用AngularJS創建網頁。我正試圖播放加載完成後加載的音頻文件。 這是我使用的HTML代碼:AngularJS HTML音頻播放器
<audio controls="controls">
<source ng-src="{{audioFile}}" type="audio/mp3">
</audio>
這是我AngularJS文件在音頻播放器不能播放任何東西。
angular.module('MyApp')
.controller('MyCtrl', ['$scope', '$routeParams', 'Quiz',
function ($scope, $routeParams, Quiz) {
$scope.quiz = Quiz.get({quizId: $routeParams.quizId}, function() {
$scope.audioFile = "Link to some audioFile";
});
}
]);
但它在下面的代碼時,我跳過服務工作:
angular.module('MyApp')
.controller('MyCtrl', ['$scope', '$routeParams', 'Quiz',
function ($scope, $routeParams, Quiz) {
$scope.audioFile = "Link to some audioFile";
}
]);
有沒有辦法等待來自服務的響應時,使這項工作?
在這段代碼中有幾個問題會阻止運行。我相信它是用手寫的,而不是你項目的代碼。 DI後缺少逗號,函數參數中有額外的撇號,Quiz.get後缺少括號。 請提供確切的代碼。並檢查你在控制檯中的功能。 – 2014-12-09 14:16:12
您的GET實際上是否返回了正確的數據? – JMK 2014-12-09 16:00:08
是的,我已經嘗試過多次記錄,並提供了正確的數據。如果我複製該數據並將$ scope.audioFile賦值給我的GET之外的值,它將起作用。 如果我複製數據並將$ scope.audioFile分配給Quiz.get函數內的數據,則這也不起作用。 我只是認爲我的html不會重新加載或者什麼時候正確的數據被分配給GET函數中的$ scope.audioFile – 2014-12-09 16:22:17