angularjs – 在app.config中注入服务
发布时间:2020-12-17 09:22:25 所属栏目:安全 来源:网络整理
导读:我想在app.config中注入一个服务,以便在调用控制器之前检索数据。我试着这样: 服务: app.service('dbService',function() { return { getData: function($q,$http) { var defer = $q.defer(); $http.get('db.php/score/getData').success(function(data)
我想在app.config中注入一个服务,以便在调用控制器之前检索数据。我试着这样:
服务: app.service('dbService',function() { return { getData: function($q,$http) { var defer = $q.defer(); $http.get('db.php/score/getData').success(function(data) { defer.resolve(data); }); return defer.promise; } }; }); 配置: app.config(function ($routeProvider,dbService) { $routeProvider .when('/',{ templateUrl: "partials/editor.html",controller: "AppCtrl",resolve: { data: dbService.getData(),} }) }); 但我得到这个错误:
如何更正设置和注入此服务?
Alex提供了无法做你想做的事情的正确理由,所以1.但是你遇到这个问题,因为你不完全使用解决他们的设计。
resolve采用服务的字符串或返回要注入的值的函数。因为你是做后者,你需要传递一个实际的函数: resolve: { data: function (dbService) { return dbService.getData(); } } 当框架去解析数据时,它会将dbService注入到函数中,以便您可以自由使用它。你不需要注入到配置块完成这一点。 好胃口! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |