我对用打字本写的AngularJS服务有问题。当我使用Visual将我的应用程序发布到Azure get服务器时,我会得到一个错误,告诉我
错误:未知提供程序: localeServiceProvider <- localeService
当我在本地机器上发布这篇文章时,它工作得很好。我唯一能找到的区别是,在我的本地机器上,应用程序加载.js文件,而在Azure服务器上,它加载.js.map文件。我想这可能就是问题所在。在本地机器上引用的服务(.js)如下所示:
/// <reference path='../_all.ts' />
var blackbird;
(function (blackbird) {
'use strict';
/**
* Services that persists and retrieves localized strings from Web Api.
*/
var LocaleService = (function () {
function LocaleService($http, $log) {
this.$http = $http;
this.$log = $log;
}
LocaleService.prototype.injection = function () {
return [
'$http',
'$log',
LocaleService
];
};
LocaleService.prototype.get = function (successcb) {
this.$http({ method: 'GET', url: '/api/locales' }).success(function (data, status, headers, config) {
successcb(data);
}).error(function (data, status, headers, config) {
this.$log.warn(data, status, headers, config);
});
};
return LocaleService;
})();
blackbird.LocaleService = LocaleService;
})(blackbird || (blackbird = {}));在Azure服务器上引用的服务(.js)如下所示:
/// <reference path='../_all.ts' />
var blackbird;
(function (blackbird) {
'use strict';
/**
* Services that persists and retrieves localized strings from Web Api.
*/
var LocaleService = (function () {
function LocaleService($http, $log) {
this.$http = $http;
this.$log = $log;
}
LocaleService.prototype.injection = function () {
return [
'$http',
'$log',
LocaleService
];
};
LocaleService.prototype.get = function (successcb) {
this.$http({ method: 'GET', url: '/api/locales' }).success(function (data, status, headers, config) {
successcb(data);
}).error(function (data, status, headers, config) {
this.$log.warn(data, status, headers, config);
});
};
return LocaleService;
})();
blackbird.LocaleService = LocaleService;
})(blackbird || (blackbird = {}));
//# sourceMappingURL=LocaleService.js.map据我所知,除了
//# sourceMappingURL=LocaleService.js.map
早些时候,我将js.map文件添加到项目中,以确保它们被上传到服务器上,因为在默认情况下,这些文件不是默认的,并且在发布应用程序时出现了询问错误。有人知道怎么解决这个问题吗?
发布于 2013-10-23 09:51:13
当您的主角应用模块在浏览器下载服务脚本之前启动时,会发生此错误。在创建主应用程序模块之前,请确保浏览器加载了LocaleService。
这是假设LocaleService.js在部署后可用(正如您可以看到的那样)。如果没有,请确保将js文件添加到visual项目中。
https://stackoverflow.com/questions/19537341
复制相似问题