Reputation: 9748
I have following in my .js
file. I am new to angular. Now instead of writing this separately, I want it to be in one service say Practices
.
How to do this?
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'
}
});
}
}
});
Upvotes: 0
Views: 41
Reputation: 2927
angular.module('myApp').factory('PracticesService', function ($resource) {
var practices = $resource(...);
return {
updatePractice: function () {
// the same
},
updateCreditCard: function () {
// the same
},
practices: practices
}
});
and then you can use it in controller as
PracticesService.practices;
PracticesService.updateCreditCard();
PracticesService.updatePractice();
Upvotes: 1