2服务合并在1 [英] 2 Services merge in 1
本文介绍了2服务合并在1的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在的.js
文件具有以下。我是新来的角。现在不是单独写这个,我希望它是一个服务说实践
。
如何做到这一点?
angular.module('对myApp')。工厂('实践',['$资源',函数($资源){
返回$resource('/api/practices/:statusController/:statusId/:searchController/:searchId/:practiceId/:pageController/:pagenum', {
practiceId:@practiceId',
statusId:@statusId',
statusController:@statusController',
searchId:@searchId',
searchController:@searchController',
页次:@pagenum',
的PageController:@pageController
});
}]);angular.module('对myApp')
.factory('PracticesEdit',函数($资源){ 返回{
UpdatePractice:功能(){
返回$资源('/ API / practicesUpdate /:practiceId',{
practiceId:@_id
},{//默认参数
更新:{
方法:把'
}
});
},
UpdateCreditCard:功能(){
返回$资源('/ API / practicesCreditCardUpdate /:practiceId',{
practiceId:@_id
},{//默认参数
updateCredit:{
方法:把'
}
});
} }
});
解决方案
angular.module('对myApp')。工厂('PracticesService',函数($资源){
VAR的做法= $资源(...); 返回{
updatePractice:功能(){
// 一样
},
updateCreditCard:功能(){
// 一样
},
做法:做法
}
});
和那么您可以在控制器使用它作为
PracticesService.practices;
PracticesService.updateCreditCard();
PracticesService.updatePractice();
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'
}
});
}
}
});
解决方案
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();
这篇关于2服务合并在1的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文