.state('tabs.urunler',{
url:'/urunler',
views:{
'urunler-tab':{
templateUrl:'pages/urunler.html',
controller:'MyCtrl'
}
}
})
.state('tabs.detail',{
url:'/urunler/:aId',
views:{
'urunler-tab' : {
templateUrl:'pages/urunlerDetail.html',
controller : 'MyCtrl'
}
}
})

这是POST方法。
$http({
url : apiAddress + 'getUrunler',
method : 'POST',
data : {type}
}).then(function successCallback(response){
$scope.urunler = response.data;
console.log($scope.urunler);
},function errorCallback(response){
console.log("error");
});

这是我的urunDetails.html
<ion-item ng-repeat="urun in urunler">
{{urun.title}}
<div class="list">
{{urun.brand}}
<a class="item item-thumbnail-left">
<img src ="{{urun.picture}}">
<h2>{{urun.brand}}</h2>
<p>{{urun.title}}</p>
</a>
</div>
&#13;
这是Urun.html
<ion-item ng-repeat="urun in urunler">
<div class="list">
<a class="item item-thumbnail-left" ng-click="changeUrun('Alix Avien')" href="#/tab/urunler/{{urun.title}}">
<img src ="{{urun.picture}}">
<h2>{{urun.brand}}</h2>
<p>{{urun.title}}</p>
</a>
</div>
</ion-item>
&#13;
问题是,我可以在Urun.html中找到{{urun}},但是当我转到urun.html的子页面urundetails.html时,$ scope不能正常工作:/。通过编写console.log(),我在到达urunDetails.html后查看了响应数据;数据即将到来,但我无法在urunDetails.html页面上看到数据。感谢帮助 !!
答案 0 :(得分:0)
此问题是因为您将数据绑定到角度范围摘要周期之外的范围变量。对于此方案,您必须手动触发摘要周期。
没有。手动触发摘要周期的方法。
我建议您在$timeout(function(){}, 0);
之后使用$scope.urunler = response.data
。如果已经存在任何摘要周期,这将基本上通过处理任何冲突来再次触发摘要周期。
答案 1 :(得分:0)
您的两个状态使用相同的控制器,但每个控制器实例似乎都有自己的$ scope。
我在这个plunkr中尝试了这个:https://plnkr.co/edit/qGO3pIDHezym71l7jygU?p=preview
angular.module('myApp', []);
angular.module('myApp').controller('ctrl1', ctrl1);
ctrl1.$inject = ['$scope'];
function ctrl1($scope){
$scope.test = 'Something';
$scope.change = function(){
$scope.test = 'Something else';
}
}
和
<body ng-app="myApp">
<div ng-controller="ctrl1">
<p>
{{test}}
</p>
<button ng-click="change()">Click me!</button>
</div>
<div ng-controller="ctrl1">
<p>
{{test}}
</p>
</div>
</body>
&#39;变化&#39; function仅更改调用它的实例中的scope变量。我最好的猜测就是在你的情况下发生了类似的情况。
您可能希望使用某种服务为控制器提供正确的数据。
也许这可以帮助您解决问题,但这只是我最好的猜测。遗憾的是,我无法真正了解您要提供的代码示例。