'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')
ただし、モジュールですでに作成されているインスタンスを更新する必要がある間は、「player」の新しいインスタンスが返されます。これを行う方法はありますか?プレーヤーのインスタンスが1つだけ必要ですが、JavaScriptの外部から初期化する必要があります。