更改ui-router状态后,URL不变

时间:2019-02-01 19:23:32

标签: angularjs angular-ui-router

我已经按照文档和在线教程创建了ui-router状态,但是当我输入自己的状态时,URL不会更新。例如,当我执行$state.go('main.about-me');时,也会发生同样的情况。状态会更改,但URL不会更改。我的配置有什么问题我看不清吗?

将感谢您的任何提示。谢谢。

'use strict';
angular
    .module('myApp.config', ['ui.router'])
    .config(routes)
    .run(['$rootScope', '$location', '$stateParams', '$state', appRun]);

function routes($stateProvider, $urlRouterProvider) {
    $stateProvider
        .state('main', {
            url: 'main',
            abstract: true,
            views: {
                '': {
                    templateUrl: 'main/main.tpl.html',
                    controller: 'mainController as vm'
                },
                'nav-bar@main': {
                    templateUrl: 'main/nav-bar/nav-bar.tpl.html',
                    controller: 'navigationBarController as vm'
                }
            }
        })

    .state('main.home', {
        url: '/home',
        views: {
            'content': {
                templateUrl: 'home/home.tpl.html',
                controller: 'homeController as vm'
            }
        }
    })

    .state('main.about-me', {
        url: '/about-me',
        views: {
            'content': {
                templateUrl: 'about-me/about-me.tpl.html',
                controller: 'aboutMeController as vm'
            }
        }
    })

    .state('main.contact-me', {
        url: '/contact-me',
        views: {
            'content': {
                templateUrl: 'contact-me/contact-me.tpl.html',
                controller: 'contactMeController as vm'
            }
        }
    });

    $urlRouterProvider.otherwise('');
}

function appRun($rootScope, $location, $stateParams, $state) {
    console.log('run the app');
    console.log('$location', $location);
    console.log('$rootScope', $rootScope);
    console.log('$stateParams', $stateParams);
    $state.go('main.home');

}

我体内有这个

<div ng-cloak> <div ui-view class="content-container"></div> </div>

0 个答案:

没有答案