如何强制刷新AngularJS组件

时间:2017-05-11 13:39:28

标签: angularjs ionic-framework angular-components

我在Ionic应用程序中开发了一个AngularJS组件。该组件被称为“朋友”。

当组件的某个属性发生更改时(例如,通常是过滤器值),组件会执行代码。

.component('friends', {
bindings: {
  filter: '@' 
},
template:
`
<div ui-sref="nextView">
  {{results}}
</div>
`,
 controller: function(GroupService, $q, $ionicLoading) {
   this.$onInit = function() {
     this.updateView();
   }

   this.$onChanges = function(changesObj) {
     this.updateView();
   }

   this.updateView = function() { /*this.results is updated here */ }

  }})

点击结果时,应用会打开一个新视图,我可以通过后退按钮返回该视图。

如何在返回此页面时强制组件刷新(执行“updateView()”)?

****编辑**** 澄清一下。

1 /用户到达TabA,哪个HTML包含组件“friends”。调用$ onInit并执行updateView(),更新变量“results”。

2 /当用户点击组件“friends”时,会显示TabA的子视图(通过ui-sref)。

3 /用户从子视图返回到TabA(由于子视图上的后退按钮)。由于子视图“附加”到TabA,组件“friends”的$ onInit不会被调用但是我想再次调用updateView()函数。所以我的问题是,当从子视图返回到TabA时,如何在组件的控制器上触发updateView()?

0 个答案:

没有答案