На устройстве Android я получаю эту ошибку при загрузке страницы onsenui. это связано с библиотекой JavaScript http://onsenui.io.
Вы не можете указать элемент «on-page» для «ons-navigator».
На устройстве Android я получаю эту ошибку при загрузке страницы onsenui. это связано с библиотекой JavaScript http://onsenui.io.
Вы не можете указать элемент «on-page» для «ons-navigator».
Если ons-страницы не было, то ons-navigator не на что переходить :)
если вы не используете встроенную ons-страницу, убедитесь, что она загружает страницу:
<body ng-app ng-controller="MyCtrl">
<ons-navigator var="myNavigator" page="mainPage.html">
</ons-navigator>
</body>
</html>
Поскольку ответ Ву Нгуена несколько правильный, но на самом деле он не объясняет другие сценарии, в которых это может произойти, я поделюсь своим решением по этому поводу. Для меня проблема возникла, когда я обновился до Onsen UI 1.3.0 с 1.1.4, и точка, где я получил эту ошибку, была на navigator.pushPage('page1.html')
, где page1.html выглядел так:
<ons-template id="page1.html">
<ons-sliding-menu
menu-page="menu.html"
main-page="browse.html"
side="left">
</ons-sliding-menu>
</ons-template>
Теперь пользовательский интерфейс Onsen не может найти on-page, в котором он по какой-то причине раньше не нуждался. Таким образом, решение состоит в том, чтобы обернуть ons-sliding-menu внутри ons-page следующим образом.
<ons-template id="page1.html">
<ons-page>
<ons-sliding-menu
menu-page="menu.html"
main-page="browse.html"
side="left">
</ons-sliding-menu>
</ons-page>
</ons-template>