Angularjs UI路由器无法正常工作且没有错误消息

时间:2014-08-06 22:52:38

标签: html angularjs angular-ui-router

我是angularjs的新手,我正试图设置我的ui路线。当我转到页面时,我点击发送给您路线的按钮,没有任何反应(甚至没有错误消息)。这就是我的路由配置看起来像......

var route = angular.module('route', ["ui.router", 'ngResource'])

// configure the routing        
 route.config(function($stateProvider, $urlRouterProvider, $locationProvider) {
    // send to profile page
    $urlRouterProvider.otherwise("/user_stats");

    $stateProvider

// route for personal info
.state('index', {
    url: "/user_stats", 
    templateUrl : "statistics/user_stats.html" , 
    controller : 'user_statsController'
})

});

这是我的html文件,带有按钮和视图

<!-- navigation bar -->
        <div class="wrapper" ng-controller="HeaderController" style="margin-top:8px">
        <ul class="nav nav-pills">
            <li ng-class="{ active: isActive('/user_stats')}"> <a ui-sref="user_stats"><span class="glyphicon glyphicon-eye-open"></span> Statistics</a></li>
        </ul>
        </div>

        <!-- route veiw -->
    <div class="container" id="route" style="width:90%">
            <div ui-view></div>
    </div> 

有什么想法吗?先谢谢

2 个答案:

答案 0 :(得分:0)

我认为评论//route for personal info看起来很奇怪,我也更喜欢这个宣布路线:

$stateProvider.when('/', {
    url: "/user_stats", 
    templateUrl : "statistics/user_stats.html" , 
    controller : 'user_statsController'
}).otherwise({ redirectTo: '/' });

答案 1 :(得分:0)

你必须做一些配置工作。请参阅下面的代码示例

route.config(['$routeProvider', '$locationProvider', '$stateProvider', function ($routeProvider, $locationProvider, $stateProvider) {

        var home = {
            name: 'home',
            controller: 'HomeController',
            templateUrl: '../shell/home.html',
            pageTitle: ''
        },
        login = {
            name: 'login',
            controller: 'loginController',
            templateUrl: '../../authentication/login.htm',
            pageTitle: ''
        },
        signatories = {
            name: 'signatories',
            controller: 'SignatoriesCtrl',
            templateUrl: '../signature/signatories.htm',
            pageTitle: "Signatories"
        };

        $stateProvider.state(home);
        $stateProvider.state(login);
        $stateProvider.state(signatories);

        $locationProvider.html5Mode(true);

    } ]).run(['$rootScope', '$state', '$stateParams',  function ($rootScope, $state, $stateParams) {
        $rootScope.$state = $state;
        $rootScope.$stateParams = $stateParams;


    } ]).controller('RootController', ['$scope', '$route', '$routeParams', '$location', '$state', function ($scope, $route, $routeParams, $location, $state) {

    } ]);