我想将特定变量传递给 angularJS 中的新视图。
这就是我想要做的:
$scope.login_username_model = $scope.register_username_model;
$location.path('/confirmation');
在我的确认视图中,我将表单字段绑定到 login_username_model。
但是,当我点击确认视图时,我的表单是空的。我能做些什么来填充这个变量?或者我怎么能调试这个?
如果 location.path 正在使用不同的控制器调用新路由,那么您不能像这样传递变量,因为控制器会创建一个新范围。
你最好的选择(在 90% 的情况下)是创建一个注入到两个控制器中的服务。然后,您可以在更改路由/视图之前将用户信息传递给服务,然后再将其取回,因为服务数据在路由更改时是持久的。
这是一个简单的骨架设置:(不是我)
https://gist.github.com/exclsr/3595424
如果它是同一个控制器,则您的路由配置中有一个可能有效的设置:
reloadOnSearch: false
您可以为每条路线设置此项。