のページには という写真のリストが含まれており、ユーザーはそれらの写真をクリックして見ることができます。コントローラを再ロードせずに経路を更新する
私はちょうど私は、ユーザーが、選択した カードで写真をページを共有することができるようにURLを生成したいと私はすでに車が をロードしているため、ページを再読み込みデフォルト
によって開か選択した写真は必要ありませんユーザーがサムネイルをクリックしたときにのみ、選択した写真の詳細を取得するようにサービスに電話したい。
私の説明が問題の理解に役立つことを望みます。これは私のコードです
function CarsController($scope, $routeParams, $location, CarsFactory, PhotosFactory) {
CarsFactory.get({id: $routeParams.id}).$promise.then(function(car) {
console.log(car);
});
PhotosFactory.query({carId: car.id}).$promise.then(function(photos) {
/*
List all the photos with carId = car.id
and the user can click to see a specific image ($scope.selectPhoto)
*/
});
$scope.selectPhoto = function(photoId) {
/*
clicking on any photo should update
the URL to /cars/{car.id}/{photoId}
I tried with $location.search('photoId', photoId); but it adds a querystring, not a URL segment change.
*/
}
if ($routeParams.photoId) {
PhotosFactory.get({id: $routeParams.photoId}).$promise.then(function(photo) {
console.log('Default photo: ' + photo);
});
}
}
ありがとうございます。
コントローラをリロードするので、コントローラをリロードする必要はありません。それはまさに私が避けたいものです(URLの更新は単にパーマリンクを生成することです) – handsome
更新された回答を参照してください –