我有一个编辑表单,用户可以在其中更新单个“拍卖”。如何在更新函数中正确使用 $state.go('auctions') ,以便用户在更新成功后被定向到拍卖 View ?
或者更好:我如何将参数传递给这个 $state.go('auctions')
// Update auction
$scope.updateAuction = function(auction){
auctions.updateAuction(auction, {
product: $scope.product,
condition: $scope.condition
}).success(function() {
$state.go('auctions'); // I think I need to add auction parameters here
ToastService.show('Auction updated');
});
};
拍卖 $state 函数如下所示:
// state for showing single Auction
.state('auctions', {
url: '/auctions/{product}/{id}',
templateUrl: 'auctions/auction-view.html',
controller: 'AuctionViewCtrl',
resolve: {
auction: ['$stateParams', 'auctions', function($stateParams, auctions) {
return auctions.get($stateParams.id);
}]
}
})
编辑表单只能通过相关的拍卖 View 访问,所以也许有更好的选择使用 $state.go 而不发送新的 GET 请求,因为拍卖已经加载?
最佳答案
$state.go("auctions", {"product": auction.product, "id": auction.id});
这里还有一个文档链接:
https://github.com/angular-ui/ui-router/wiki/Quick-Reference#stategoto--toparams--options
关于angularjs - 如何向 $state.go 添加参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33391817/