Tôi có thư viện của bên thứ ba tải lên trang của tôi một cách không đồng bộ và tôi muốn sử dụng nó làm dịch vụ.AngularJS - gói thư viện được tải bên thứ ba asynchronic như một dịch vụ
Tôi làm cách nào để bao bọc mã tải bên trong dịch vụ góc? Nói chung những gì sẽ là thực hành tốt nhất?
Tại thời điểm này cách tiếp cận của tôi là một cái gì đó giống như vậy:
angular.module('myAPIServices', []).
factory('MyAPI', function() {
return {
\\ API is declared at the loaded script
doStuff:function(){$window.API.doStuff()}
};
});
và sau đó trên trang ngoài phạm vi góc
(function() {
var js = document.createElement('script');
var loc = document.getElementsByTagName('script')[0];
js.async = true;
js.src = "myAPI.js";
loc.parentNode.insertBefore(js, loc);
}());
tuyệt vời Tôi sẽ sử dụng phương pháp này, cảm ơn :) –
Các ví dụ về jsFiddle thật tuyệt vời! Gọi lại làm việc tuyệt vời cho tôi. – Rob