Angularjs 表单成功时的UI路由器重定向

Angularjs 表单成功时的UI路由器重定向,angularjs,angular-ui-router,Angularjs,Angular Ui Router,我在AngularJS应用程序中使用UI路由器。当表单发布后,我想加载另一个页面 我试过下面的代码。console.log(数据)工作正常,但是$state.go('brands')没有任何问题。 没有错误 $http({ ... .success(function (data) { console.log(data); $state.go('brands'); }) 更新!找到解决方案。表单提交是在模式中进行的,在加载新页面时它不会隐藏: $('#confirm_delete

我在AngularJS应用程序中使用UI路由器。当表单发布后,我想加载另一个页面

我试过下面的代码。console.log(数据)工作正常,但是
$state.go('brands')没有任何问题。

没有错误

$http({
...
.success(function (data) {
    console.log(data);
    $state.go('brands');
})
更新!找到解决方案。表单提交是在模式中进行的,在加载新页面时它不会隐藏:

$('#confirm_delete').modal('hide');
$('#confirm_delete').on('hidden.bs.modal', function (e) {
    $state.go("brands");
});

您应该使用$location.url(“/brands”)

像这样:

    angular.module('appName').controller('ThisCtrl', [
        '$scope', '$location',
        function ($scope, $location) {

            $scope.dothis = function(){
                $location.url("/brands");
            };
        }
    ]);

您应该使用$location.url(“/brands”)

像这样:

    angular.module('appName').controller('ThisCtrl', [
        '$scope', '$location',
        function ($scope, $location) {

            $scope.dothis = function(){
                $location.url("/brands");
            };
        }
    ]);

这个场景应该是可行的。没有任何东西反对
UI路由器
状态。我创造了一个例子


检查它,您将看到它正在工作(它使用Get-to-send模型,但……同样适用于POST)。检查它

此场景应该可以正常工作。没有任何东西反对
UI路由器
状态。我创造了一个例子


检查它,您将看到它正在工作(它使用Get-to-send模型,但……同样适用于POST)。检查它

恐怕什么也没发生。您是否在控制器中注入$location提供程序?请提供完整的控制器样本。我在上面添加了一个示例。您的解决方案没有问题,但不幸的是,我误解了这个问题。更新了我原来的帖子。谢谢你的帮助!恐怕什么也没发生。您是否正在控制器中注入$location提供程序?请提供完整的控制器样本。我在上面添加了一个示例。您的解决方案没有问题,但不幸的是,我误解了这个问题。更新了我原来的帖子。谢谢你的帮助!请显示$stateProvider的配置以解决问题。一个更好的解决方案是准备一个JSFIDLE以更简单的方式帮助您。请显示您的$stateProvider配置以解决您的问题。一个更好的解决方案是准备一个JSFIDLE以更简单的方式帮助您。谢谢!这就像我最初的解决方案。我发现了问题并更新了我原来的帖子。谢谢你的帮助。如果这有帮助的话,那就太好了。祝您使用
UI路由器好运
谢谢!这就像我最初的解决方案。我发现了问题并更新了我原来的帖子。谢谢你的帮助。如果这有帮助的话,那就太好了。祝您好运使用
UI路由器
app.controller('MainCtrl', ['$scope', '$http', '$state'
  ,function($scope, $http, $state){
    $scope.user = { name : "John" }
    $scope.send = function(){
      $http.get("dummy.json", { params : $scope.user } )
      .success(function(data){
        $state.go("brands");
      })
    }
  }]);