首次观察时AngularJS / Ionic Header无法正确绑定

时间:2015-10-03 18:47:09

标签: javascript angularjs ionic-framework ionic ionic-view

我有一个简单的角度/离子视图,我将模型绑定到。以下是控制器的示例:

.controller('LocationDetailsCtrl',function($scope,$http,$stateParams,$local    storage,$log,Locations){

   var locationId = $stateParams.locationId;

   Locations.setCurrent(locationId);

   var model = {
       location:null
   };

   Locations.getById(locationId)
     .then(function(location){
       $scope.model.location = location;
     },function(error){
       $log.error(error);
   });

   $scope.model = model;
}

我是视图标题标题的属性$scope.model.location.name

这看起来如下

<ion-view view-title="{{model.location.name}}">
   <ion-content>

   ... other model binding stuff here works fine

   </ion-content>
</ion-view>

我遇到的问题是,当第一次加载视图时,除了标题绑定之外,一切都正常加载。然后我可以转到另一个视图,然后回到这个视图,标题正确地绑定了我的范围上的模型。

以下是截图

第一次加载视图..

enter image description here

导航到另一个视图后返回

enter image description here

不确定为什么当所有其他$scope.model.location.XXXX属性正确绑定并在视图中更新时,它不会第一次绑定。

1 个答案:

答案 0 :(得分:0)

使用

  

if(!$ scope。$$ phase)$ scope。$ apply()

之后

  

$ scope.model.location = location;