我在使用Angular JS Ionic时遇到问题。我使用Ajax获取列表但我不知道如何发送它。
<li ng-repeat=" list in list">
<a class="item item-icon-right " ng-click='next({list})'>
<i class='icon ion-chevron-right'></i>
<p>{{list.rejestracja}}, {{list.auto}}</p>
<p>{{list.klient}}</p>
</a>
</li>
我想从另一个视图中获取我从此列表中选择的那些元素。
好的抱歉。当您从列表中选择一个项目时,我想在下一个视图中显示它。可能会显示更多:
在我的控制器中,我有以下功能:
$scope.next = function(message) {
$scope.user = message;
console.log($scope.user);
$state.go('master');
}
所以,当我去找&#39; master&#39;我无法使用此$scope.user
,但它并未向我展示。有人知道如何改变吗?
答案 0 :(得分:0)
ionic使用ui-router所以如果您的下一个视图是嵌套视图,您应该能够通过范围继承(https://github.com/angular-ui/ui-router/wiki/Nested-States-%26-Nested-Views)在子控制器中使用控制器变量。 如果您的视图没有嵌套,那么您有一些选项
1-put it in $rootScope
2-use session/local storage
3-create a service to hold that information across the application
这样做的方式取决于信息的附加功能和实时时间 如果传递那些数据,就会发生任何事情,你可以使用$ rootScope 或者创建一个包含随机数据所有和平的剪贴板服务
在你的控制器中使用$ rootScope在带有数据源的一个中注入$ rootScope,并拥有你想要显示数据的视图。 然后在你的源控制器下一个函数
$scope.next = function(message) {
$scope.user = message;
$rootScope.user=message;
console.log($scope.user);
$state.go('master');
}
然后在目标控制器中执行
$scope.message=$rootScope.message;
可以让您访问视图中的消息。
这不是最干净的方法,但是它可以让你绕过这个问题而不会让你感到沮丧,当你摔倒时你可以重新审视这个工具更好的解决方案