在 UI-Router 中,在 $scope 之间共享数据可能具有挑战性主控制器及其子状态,而不依赖于父控制器中的服务或观察者。
关键在于理解 AngularJS 范围和 UI-Router 视图之间的关系:
考虑以下 UI-Router 状态定义:
.state("main", { controller:'mainController', url:"/main", templateUrl: "main_init.html" }) .state("main.1", { parent: 'main', controller:'mainController', url:"/1", templateUrl: 'form_1.html' }) .state("main.2", { parent: 'main', controller:'mainController', url: "/2", templateUrl: 'form_2.html' })
在 mainController 中,按如下方式初始化共享数据模型:
controller('mainController', function ($scope) { $scope.Model = $scope.Model || {Name : "xxx"}; })
在您的子状态模板中,使用 ng-model使用点符号来访问共享数据:
<input type="text" ng-model="Model.Name">
通过执行以下步骤,您可以在 UI-Router 状态下的 $scope 之间有效地共享数据,而无需父控制器中的服务或观察者。
以上是如何在没有服务或观察者的情况下在 AngularJS UI-Router 状态之间共享数据?的详细内容。更多信息请关注PHP中文网其他相关文章!