meanjs中的服务

使用服务的方法

(1)modules\core\client\services

menus.client.service.js 定义了Menus服务,以供之后调用:

angular.module('core').service('Menus', [
socket.io.client.service.js定义了Socket服务,
angular.module('core').service('Socket', ['Authentication', '$state', '$timeout',
使用工厂的方法
modules\articles\client\services
articles.client.service.js中定义了Articles服务
angular.module('articles').factory('Articles', ['$resource',

均定义在相应模块客户端代码的service文件夹内, AngularJS 中,服务是一个函数对象,可在你的 AngularJS 应用中使用,有两种方法来创建服务:工厂和服务
$resource,使用它可以非常方便的同支持restful的服务单进行数据交互。
function LibrariesService($resource) {
  return $resource('api/libraries/:libraryId', {
    libraryId: '@_id'
  }, {
    update: {
      method: 'PUT'
    }
  });
}

$resource函数需要一个必填参数URL,代表了可以访问的资源,以及两个可选参数:默认参数和额外的你想在资源上配置的操作。

第一个参数:URL是带参数的(注意:参数:libraryId代表了会用libraryId参数来替换),如果没有传递参数,那么它会被空字符串替换。

第二个参数:是传递默认的参数到每个请求中。libraryId参数是”@_id”。这表示,如果我使用了一个来自服务器端的返回值对象,那么在它上面调用任何方法(比如$save),那么libraryId字段会从对象的_id属性中取值。

第三个参数:是其他我们想暴露自定义资源上的方法。

$resource返回的对象包含了同后端服务进行交互的方法,我们可以把这个返回的对象理解成同RESTFul的后端服务进行交互的接口。

该对象包含两个get类型的方法已经三个非get类型的方法。

get({libraryId:'123'}, successFn, errorFn);

该方法向url发送一个get请求,并期望一个json类型的响应。这里会向/api/libraries/123发送一个请求,successFn处理请求成功响应,errorFn处理错误。

query(params, successFn, errorFn)

同get()方法使用类似,一般用来请求多条数据。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值