假设我的控制器中有一个函数和一个变量。还有另一个带有另一个函数的控制器,它将变量作为参数。
我需要从我的控制器重定向到该控制器,调用该函数,并从我的控制器传递变量值。
如何在单页应用程序中执行此操作?
很像我们在MVC中从一个页面重定向到另一个页面并通过URL传递值。我试图将变量传递给另一个拥有自己页面的控制器。
答案 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