Angularjs $resource如何调用多个服务
angularjs $resource how to call multiple services
我昨天刚刚开始学习angularjs,并且已经到了教程的这一部分,这里有一个使用$resource从服务访问数据的示例。我在ASP运行这个例子。Net MVC和json文件存储位置的配置略有不同。包含手机列表的json文件和包含每个手机详细描述的一堆文件位于不同的文件夹中。现在我看到的问题是这一行:
return $resource('phones/:phoneId.json', {}, {
query: {method:'GET', params:{phoneId:'phones'}, isArray:true}
根据我的文件夹结构,包含电话列表的json文件可以使用我从上面修改的这一行访问
return $resource('/MyAngularScripts/:phoneId.json.htm', {}, {
query: { method: 'GET', params: { phoneId: 'jsonPhonedata' }, isArray: true }
我将扩展名更改为.htm,因为我不想向IIS express添加另一个处理程序。文件扩展名不是问题,因为我可以看到电话列表。现在,当我点击每个手机,我应该能够看到它的详细说明从json文件,这是另一个文件夹。文件夹为:/Content/PhoneData/{all the various phone data json files here}
目前我得到一个404没有找到,因为详细信息文件是在/Content/PhoneData/motorola-xoom-with-wi-fi.json.htm
,但我击中url作为/MyAngularScripts/motorola-xoom-with-wi-fi.json.htm
我如何修改我的服务,因为它现在允许两个不同的url ?
当前服务代码:
var phonecatServices = angular.module('phonecatServices', ['ngResource']);
phonecatServices.factory('Phone', ['$resource',
function ($resource) {
return $resource('/MyAngularScripts/:phoneId.json.htm', {}, {
query: { method: 'GET', params: { phoneId: 'jsonPhonedata' }, isArray: true }
});
}]);
获取电话列表的当前控制器代码:$scope.phones = Phone.query();
获取选定电话详细信息的当前控制器代码:
$scope.phone = Phone.get({ phoneId: $routeParams.phoneId }, function (phone) {
$scope.mainImageUrl = phone.images[0];
});
如何修改控制器代码以调用服务?
可以为每个操作指定url
return $resource(
"/MyAngularScripts/:phoneId.json.htm",
{ Id: "@Id" },
{
'get':{url:'/Content/PhoneData/'+:phoneId+'json.html},
'query' : {url:'/MyAngularScripts/jsonPhonedata.json.html'},
}
);
相关文章:
- AngularJs在调用服务方法后更新指令
- Ionic Angular/为什么在控制器功能结束之前不调用服务
- 如何在AngularJS ng-click(或ng-change,..)中调用服务函数
- 使用依赖注入时,通过引用调用服务或直接调用服务是否有区别
- AngularJS + Parse API 调用服务不受 userId 的约束
- 如果在通过脚本标记调用服务时花费更多时间,如何中止服务调用
- 使用jquerysoap从wsdl文件调用服务
- AngularJS调用服务不工作
- 单元测试调用服务的指令
- 使用ES6在AngularJs的控制器中调用服务
- 如何从控制器调用服务方法
- 如何从ftlofbiz调用服务(带参数)
- 调用服务函数:第一次执行时没有填充作用域
- AngularJs从未定义的控制器调用服务函数
- AngularJS, Jasmine:测试一个使用$http调用服务的控制器函数
- Concordion类不能调用服务bean NullPointerException
- 在自定义指令中调用服务
- 调用服务返回未定义
- AngularJS:在事件上调用服务时不会应用绑定
- 直接在指令中调用服务值