読者です 読者をやめる 読者になる 読者になる

angular.jsでのajax通信をモジュール化して共通処理にする方法2

こちらの続編です。
上記のページの例では1モジュール1関数みたいな書き方になってしまったのであまり汎用性がないなと思って追記で1モジュールに複数関数定義できる形にしました。

モジュール

App.factory("ModelUser", function($resource) {
    return $resource(
        "http://example.com/api/user/:action.json",
        null,
        {
            register: {
                method: "post",
                params: {
                   action: "register"
                }
            },
            get: {
                method: "post",
                params: {
                   action: "get",
                }
            },
        }
    );
});

コントローラ側(呼出し側)

// User登録メソッド呼出し
ModelUser.register({
  name: name,
  address: address
}).$promise.then(function(response) {
  // 成功
});

// User取得メソッド呼出し
ModelUser.get({
  id: id
}).$promise.then(function(response) {
  // 成功
});

今回のようにすれば、サーバapiへのurlが同じ場合は1ファイルにまとめることができるのでより見通しがよくなりました

以上です