У меня есть служба под названием "player", и мне нужно обновить службу, когда объект флэш-объекта будет завершен.
mySongPlayer.factory('player', function() {
var isPlayerLoaded = false;
var playerHolder = '';
window.playerReady = function(thePlayer) {
playerHolder = window.document[thePlayer.id];
addListeners();
isPlayerLoaded = true;
}
var flashvars = {
file:"",
autostart:"true",
skin: "/skins/glow/glow.zip",
}
var params = {
allowfullscreen:"false",
allowscriptaccess:"always"
}
var attributes = {
id:"player1",
name:"player1"
}
swfobject.embedSWF("/player.swf", "player_placeholder", "100%", "40", "9.0.115", false, flashvars, params, attributes);
var playObj;
return playObj || (playObj = {
currentId: 'test', currentUrl: 'url', playerHolder: ''
});
});
Я знаю, как получить доступ к службе с помощью
angular.element(DOMElement).injector().get('player')
но он возвращает новый экземпляр "игрока", в то время как мне нужно обновить экземпляр, уже созданный в модуле. Есть ли способ сделать это? Мне нужен только один экземпляр проигрывателя, но мне нужно его инициализировать из-за пределов javascript.