我在同一页面上有两个不同的应用程序。
我可以通过服务(或任何其他方式)在这两个应用之间共享数据吗?
或者这不可能吗?
(我怀疑这是不可能的,虽然有规律的角度机制) - 但我认为仍然值得问......
这可以使用window变量来完成 - 但我想避免这样做。
谢谢!
答案 0 :(得分:17)
我最终以下列方式解决了这个问题:
angular.module('sharedService', []).factory('SharedService', function() {
var SharedService;
SharedService = (function() {
function SharedService() {
/* method code... */
}
SharedService.prototype.setData = function(name, data) {
/* method code... */
};
return SharedService;
})();
if (typeof(window.angularSharedService) === 'undefined' || window.angularSharedService === null) {
window.angularSharedService = new SharedService();
}
return window.angularSharedService;});
/* now you can share the service data between two apps */
angular.module("app1", ['sharedService'])
/* module code */
angular.module("app2", ['sharedService'])
/* module code */
我不得不承认这个解决方案并不理想 - 但这是我发现这个问题最干净的解决方案。