重定向到控制器并将值传递给其函数

时间:2016-12-22 08:05:06

标签: angularjs controller

假设我的控制器中有一个函数和一个变量。还有另一个带有另一个函数的控制器,它将变量作为参数。

我需要从我的控制器重定向到该控制器,调用该函数,并从我的控制器传递变量值。

如何在单页应用程序中执行此操作?

很像我们在MVC中从一个页面重定向到另一个页面并通过URL传递值。我试图将变量传递给另一个拥有自己页面的控制器。

2 个答案:

答案 0 :(得分:3)

你可以通过两种方式做到这一点。 一种是通过角度服务,另一种是通过 ui-routing resolve 功能。 根据最佳实践标准,服务更为可取。

答案 1 :(得分:1)

您应该使用$routeParams来获得与MVC类似的行为。只需定义这样的路线:

    {
        url: '/page/:pageNo',
        config: {
         templateUrl: "page.html",
         controller: "pageController"
        }
    }

从要重定向的控制器中,使用$location.path

$location.path('/page/' + $scope.pageNo);

最后,在您重定向到的控制器中,您将使用$routeParams

访问此参数
$routeParams.pageNo