AngularJS - $resource中的params

场景

在需要检索用户列表时,使用params在get请求中添加检索信息。

UserService

angular
        .module('user')
        .factory('UserService', UserService);

UserService.$inject = ['$resource']; // 注入$resource服务

    function UserService($resource) {

        let Users = $resource('/api/base/users/:userId', {
            userId: '@_id',
            params: '@findOption'  // 有检索条件时,负责附加检索信息
        }, {
            update: {
                method: 'PUT'
            },
            changeStatus: {
                method: 'PATCH',
                url: 'api/base/users/:userId/status'
            },
            resetPassword: {
                method: 'PATCH',
                url: '/api/base/users/:userId/password'
            },
            import: {
                method: 'POST',
                url: '/api/base/users/import'
            }
        });

        angular.extend(Users, {
            passwordReset: function (userId) {
                return this.resetPassword(userId, {}).$promise;
            },
            importJSON: function (JSONdata) {
                return this.import(JSONdata).$promise;
            }
        });
        return Users;
    }

可以通过$resource()第三个参数来给资源自定义方法,如update、changeStatus等方法。

	{
            update: {
                method: 'PUT'
            },
            changeStatus: {
                method: 'PATCH',
                url: 'api/base/users/:userId/status'
            },
            resetPassword: {
                method: 'PATCH',
                url: '/api/base/users/:userId/password'
            },
            import: {
                method: 'POST',
                url: '/api/base/users/import'
            }
        }

params: ‘@findOption’ // 有检索条件时,负责附加检索信息

controller中调用服务

需要检索时
findOption = {
	searchText: '陈某'
}
UserService.query(findOption);

url

http://localhost:7000/api/base/users?searchText=陈某
不需要检索时
UserService.query();

url

http://localhost:7000/api/base/users
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值