2014-02-28 47 views
0

我在我的.js文件中有以下内容。我对角度很陌生。现在不要单独写这个,我希望它在一个服务中表示为Practices2服务合并在1

如何做到这一点?

angular.module('myApp').factory('Practices', ['$resource', function ($resource) { 
    return $resource('/api/practices/:statusController/:statusId/:searchController/:searchId/:practiceId/:pageController/:pagenum', { 
     practiceId: '@practiceId', 
     statusId: '@statusId', 
     statusController: '@statusController', 
     searchId: '@searchId', 
     searchController: '@searchController', 
     pagenum: '@pagenum', 
     pageController: '@pageController' 
    }); 
}]); 

angular.module('myApp') 
    .factory('PracticesEdit', function ($resource) { 

     return { 
      UpdatePractice: function() { 
       return $resource('/api/practicesUpdate/:practiceId', { 
        practiceId: '@_id' 
       }, { //parameters default 
        update: { 
         method: 'PUT' 
        } 
       }); 
      }, 
      UpdateCreditCard: function() { 
       return $resource('/api/practicesCreditCardUpdate/:practiceId', { 
        practiceId: '@_id' 
       }, { //parameters default 
        updateCredit: { 
         method: 'PUT' 
        } 
       }); 
      } 

     } 
    }); 

回答

1
angular.module('myApp').factory('PracticesService', function ($resource) { 
    var practices = $resource(...); 

    return { 
      updatePractice: function() { 
      // the same 
      }, 
      updateCreditCard: function() { 
      // the same 
      }, 
      practices: practices 
     } 
    }); 

,然后你可以在控制器使用它作为

PracticesService.practices; 
PracticesService.updateCreditCard(); 
PracticesService.updatePractice(); 
+0

thankx ......但是当我打电话'updatePractice'它给了我错误'类型错误:对象#有没有方法“ UpdatePractice'' – Anup

+0

我将方法名称更改为以小写字母开头,是否复制了代码或正确写入了它? – doodeec

+0

是的......它确实是小写的问题......! :-) – Anup