OnsenUI很棒。又快又容易。但是,控制器中控制逻辑的文档并不多。

例如,我想做一个$location。控制器内的路径('/newpath')。温泉是怎样做的?我试过"ons。导航器。pushPage('partials/latestjob.html');"在我的控制器函数中,但不起作用。我们是否仅限于在温泉中单击以转到另一页?

谢谢.

有帮助吗?

解决方案

在Onsen UI1.04中,您可以从控制器内部访问navigator,如下所示。

$rootScope.ons.navigator.pushPage('new_page.html');

另一种方法是

$rootScope.ons.$get('#navigator').pushPage(pagename);

哪里 #navigatorid 你放在s.t上的导航器。

<ons-navigator id="navigator" page="page1.html"></ons-navigator> 

此方法可以选择您使用的导航器。

第三种方法是获取导航器范围。例如,

var element = document.querySelector( ".navigator-container");
var scope = angular.element( element ).scope();
scope.pushPage(pagename);

类名 .navigator-container 是ui navigator的内置类名。即使在温泉ui1.0中也很好。

增加:的例子 $rootScope

myapp.controller('myCtrl', function($scope, $rootScope) {
  $scope.pushPage = function(pagename) {
    $rootScope.ons.navigator.pushPage(pagename);
  }
});
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top