温泉+ pushPage + options.onTransitionEnd

时间:2015-11-15 18:14:54

标签: javascript onsen-ui

我尝试使用options.onTransitionEnd上提供的pushPage(),因为我想在推送页面的控制器内调用$scope.init()函数。

我看到我只能将一个匿名函数传递给onTransitionEnd选项。

例如:

app.navi.pushPage('page.html', {onTransitionEnd: function(){ alert('ok') }  } );

有一种方法可以在推送页面的控制器内调用$scope函数吗?

很多。大卫

1 个答案:

答案 0 :(得分:0)

只要按钮位于NavigatorController范围:

,您就可以通过这种方式传递函数

<ons-button ng-click="myNav.pushPage('page1.html', {onTransitionEnd: myFunction})">Push</ons-button>

ons.bootstrap()
.controller('NavigatorController', function($scope) {
  $scope.myFunction = function () {
    console.log('onTransitionEnd');
  };
});

在此处查看:http://codepen.io/frankdiox/pen/Gpzvqw

在任何情况下,如果你想要的是初始化推送的页面,也许它更容易使用页面事件(只有pageinit可用于Onsen UI 1.x):http://onsen.io/guide/overview.html#Pagelifecycle

当然,推送页面的控制器也会运行。

相关问题