我有一个Angular服务/提供程序,将json数据提供给我的控制器,效果很好:
angular.module('myApp.services', ['ngResource']). factory("statesProvider", function($resource){ return $resource('../data/states.json', {}, { query: {method: 'GET', params: {}, isArray: false} }); });
但是 我还需要将json数据从另一个文件提供给同一控制器counties.json。
counties.json
在哪里可以找到如何编写将两个文件都提供给控制器的服务?
您可以更新服务以返回资源的哈希,而不是单个哈希:
angular.module('myApp.services', ['ngResource']). factory("geoProvider", function($resource) { return { states: $resource('../data/states.json', {}, { query: { method: 'GET', params: {}, isArray: false } }), countries: $resource('../data/countries.json', {}, { query: { method: 'GET', params: {}, isArray: false } }) }; });
您将可以使用它,并.query()在函数名末尾添加geoProvider.states.query()和,geoProvider.countries.query()并且myApp.services必须将其注入到控制器中,然后再将geoProvider服务注入到控制器本身中。
.query()
geoProvider.states.query()
geoProvider.countries.query()
myApp.services
geoProvider