我想通过ons-sliding-menuons-navigator加载到angular ui-router中,但是它不起作用。请查看我下面的代码,我在哪里做错了,以及为什么发生这种情况,无论是在控制台中显示任何错误还是在工作中。您的帮助将不胜感激。

角度:-

var app = angular.module('myApp', ['onsen', 'ui.router']);

app.config(function($stateProvider, $urlRouterProvider) {

    $urlRouterProvider.otherwise('/slider');

    $stateProvider
        .state('navigator', {
            abstract: true,
            url: '/navigator'
        })
        .state('navigator.slider', {
            parent: 'navigator',
            url: '/slider',
            onEnter: ['$rootScope', function($rootScope) {
                $rootScope.myNavigator.resetToPage('html/slider.html');
            }]
        })
    ;

});


HTML:-

<body ng-app="myApp">
    <ons-navigator title="Navigator" var="myNavigator"></ons-navigator>

    <ons-template id="html/slider.html">
        <ons-sliding-menu menu-page="html/menu.html"
                          side="left"
                          main-page="html/main.html"
                          var="myMenu" type="reveal"
                          max-slide-distance="260px"
                          swipeable="true">
        </ons-sliding-menu>
    </ons-template>
</body>

最佳答案

如果ui-sref中没有index.html,则ui-router似乎无法正常工作。
将下一个哑音段添加到您的index.html使其起作用。

<div style="height: 0; width: 0" ui-sref="navigator"></div>


只要它存在,它所指向的状态都没有关系。老实说,我不知道原因,但是它可以解决此问题。

顺便说一句,添加一个ons-page包装您的ons-sliding-menu,否则导航器会大吼大叫。

希望能帮助到你!

关于javascript - 如何通过Angular ui-router在ons-navigator中设置ons-sliding-menu?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33165594/

10-09 16:51