我正在使用OnsenUI 1.3.1
(通过凉亭安装),AngularJS 1.3.15
和Cordova 5.0.0
开发OnsenUI Cordova应用程序。我在JavaScript中找到ons-navigator
对象时遇到了问题,OnsenUI网站上提到的所有方法(http://onsen.io/guide/overview.html#CallingComponentAPIsfromJavaScript)似乎都不适合我。我的代码设置如下:
的index.html:
...
<body>
<div ng-controller="MainController">
<ons-navigator id="navigator" var="myNavigator" page="{{targetPage}}">
<div>
Hello!
</div>
</ons-navigator>
</div>
...
</body>
...
MainController:
angular.module('myApp.controllers')
.controller('MainController', ['$log', '$scope',
function ($log, $scope) {
$scope.initialize = function () {
$scope.targetPage = 'views/login.html';
$log.info('scope navigator: ' + $scope.myNavigator); // comes back as undefined
$log.info('find navigator: ' + ons.findComponent('ons-navigator#navigator', document.body)); // comes back as null
};
$scope.initialize();
}]);
我目前没有输出使用ons.findParentComponentUntil()
方法的OnsenUI文档中概述的方法或涉及更改基于组件的对象的方法,但我已经查看了这些方法,并且他们没有&#39 ; t似乎也工作(返回undefined)。
有没有人有任何想法?谢谢!
答案 0 :(得分:0)
您尝试在创建导航器元素之前尝试访问导航器元素,尝试使用ons.ready();
执行代码,例如:
ons.ready(function() {
console.log("scope navigator: " + $scope.myNavigator);
});
&#13;