AngularJS/TIPS集/$resource
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#topicpath
----
#contents
***サンプル [#gb08de87]
$resourceを使ったサンプルです。というかまだ殴り書きメモ。
RESTの仕様は[[$httpのときのサンプル>AngularJS/TIPS集/$htt...
/api/hoge/ にHTTP GETすると一覧(JSON配列)
/api/hoge/[id].json にGETすると詳細
/api/hoge/ にHTTP POST すると登録
こんなよくある仕様だとします。これらに対して、[[$httpのと...
hogeService.query();
hogeService.get(data);
hogeService.save(postData);
こんな感じでサービスを呼び出せるようにします。
***サービスの定義 [#i3b1c894]
angular.module(APP_NAME)
.factory('hogeService', ['$resource', function ($res...
// Public API here
return $resource('/api/hoge/:key.:ext',
{},
{}
)
}]);
引数の
/api/hoge/:key.:ext
については
$resource.get({key: '012345', ext: 'json'}
とメソッドを呼び出した場合
http://xxx/api/hoge/012345.json
が呼び出されるという意味です。
メソッド引数のプロパティと異なる場合は、たとえば
$resource.get({key1: '012345', ext1: 'json'}
などとなる場合は、$resourceのメソッドの定義を以下のように...
$resource('/api/hoge/:key.:ext',
{key: '@key1',ext: '@ext1'}, ←ここで紐付けを...
{}
)
2016/03/07追記: コレ、POSTとかでBodyでJSONを飛ばす場合だ...
2016/04/26追記: コレについて、ちゃんと調査した結果は[[こ...
***コントローラからの呼び出し方 [#tf7e9d0f]
angular.module(APP_NAME)
.controller('PasswordCtrl', ['hogeService', '$scope'...
// $resourceのサンプル
$scope.hoges = hogeService.query(); // あらかじ...
$scope.addRow = function () {
$scope.hoges.push($scope.postData);
hogeService.save($scope.postData); // あらか...
};
$scope.delete = function (id) {
console.log(id);
var result = hogeService.get({key: id, ext: ...
function () {
alert(result.key);
}); // あらかじめ定義されたgetを呼び出す...
};
}
])
;
**関連リンク [#pd80c051]
----
この記事は
#vote(おもしろかった,そうでもない)
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
終了行:
#topicpath
----
#contents
***サンプル [#gb08de87]
$resourceを使ったサンプルです。というかまだ殴り書きメモ。
RESTの仕様は[[$httpのときのサンプル>AngularJS/TIPS集/$htt...
/api/hoge/ にHTTP GETすると一覧(JSON配列)
/api/hoge/[id].json にGETすると詳細
/api/hoge/ にHTTP POST すると登録
こんなよくある仕様だとします。これらに対して、[[$httpのと...
hogeService.query();
hogeService.get(data);
hogeService.save(postData);
こんな感じでサービスを呼び出せるようにします。
***サービスの定義 [#i3b1c894]
angular.module(APP_NAME)
.factory('hogeService', ['$resource', function ($res...
// Public API here
return $resource('/api/hoge/:key.:ext',
{},
{}
)
}]);
引数の
/api/hoge/:key.:ext
については
$resource.get({key: '012345', ext: 'json'}
とメソッドを呼び出した場合
http://xxx/api/hoge/012345.json
が呼び出されるという意味です。
メソッド引数のプロパティと異なる場合は、たとえば
$resource.get({key1: '012345', ext1: 'json'}
などとなる場合は、$resourceのメソッドの定義を以下のように...
$resource('/api/hoge/:key.:ext',
{key: '@key1',ext: '@ext1'}, ←ここで紐付けを...
{}
)
2016/03/07追記: コレ、POSTとかでBodyでJSONを飛ばす場合だ...
2016/04/26追記: コレについて、ちゃんと調査した結果は[[こ...
***コントローラからの呼び出し方 [#tf7e9d0f]
angular.module(APP_NAME)
.controller('PasswordCtrl', ['hogeService', '$scope'...
// $resourceのサンプル
$scope.hoges = hogeService.query(); // あらかじ...
$scope.addRow = function () {
$scope.hoges.push($scope.postData);
hogeService.save($scope.postData); // あらか...
};
$scope.delete = function (id) {
console.log(id);
var result = hogeService.get({key: id, ext: ...
function () {
alert(result.key);
}); // あらかじめ定義されたgetを呼び出す...
};
}
])
;
**関連リンク [#pd80c051]
----
この記事は
#vote(おもしろかった,そうでもない)
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
ページ名: