サーバー側の CRUD アプリを Angular.js に変換していますが、小さな問題があります。
でデータを取得し、$http
を介してすべてのデータを表示していますng-repeat
。ユーザーが特定のアイテムをクリックしてリソースにリダイレクトできるようにしたいと考えています。
$http
では、動的に get 呼び出しにURL パラメータを渡すにはどうすればよいでしょうか?
リソースへのリンクを作成する方法は次のとおりです (car.id = 3)
<a ng-href="/#/cars/{{car.id}}">Edit</a>
リンクはhttp://local.dev/#/cars/3に移動する必要があります
では、コントローラーで動的 URL をバインドするにはどうすればよいでしょうか。
これが私のコントローラーの簡素化されたバージョンです
App.controller('CarIndexCtrl', ['$scope', '$http', '$location', function ($scope, $http, $location) {
$scope.car = {};
$http({
method: 'GET',
url: $location.$$url,
})
.success(function (data, status, headers, config) {
$scope.car = data;
})
.error(function (data, status, headers, config) {
// error
});
}]);
したがって、URL を角度のある方法でバインドすることに興味があります。上記の解決策は機能しますが、ハックのように感じます。私は Angular にあまり詳しくないので、今のところデフォルトに固執するのが好きです。後でrestangularまたはng-resourceを検討するかもしれませんが...