Angularjs 带角度js1的ui路由器

Angularjs 带角度js1的ui路由器,angularjs,Angularjs,app.js var app = angular.module("ng-app",[ 'ui.router', 'oc.lazyLoad', 'ngMaterial', 'ngAnimate', 'ngMessages', 'ngAria', 'ngAA', 'ngRoute', 'ngCookies', 'thatisuday.dropzone' ]); app.config(function ($stateProvider, dr

app.js

var app = angular.module("ng-app",[
   'ui.router',
   'oc.lazyLoad',
   'ngMaterial',
   'ngAnimate',
   'ngMessages',
   'ngAria',
   'ngAA',
   'ngRoute',
   'ngCookies',
   'thatisuday.dropzone'
]);
app.config(function ($stateProvider, dropzoneOpsProvider, $authProvider, $urlRouterProvider, $httpProvider, $mdThemingProvider, $mdIconProvider, $locationProvider, site_settings) {

$locationProvider.html5Mode(true);
$urlRouterProvider.otherwise(function ($injector) {

    var $state = $injector.get("$state");
    $state.go('login');
});
$mdIconProvider.defaultIconSet('assets/angular-material-assets/img/icons/core-icons.svg', 24);


$authProvider.signinUrl = site_settings.api_url + 'authenticate';
$authProvider.signinState = 'login';
$authProvider.signinRoute = '/login';
$authProvider.signinTemplateUrl = 'module/auth/views/login.html';
$authProvider.afterSigninRedirectTo = 'timeline';
$authProvider.afterSignoutRedirectTo = 'login';

$stateProvider
        .state('index', {
            abstract: true,
            views: {
                '@': {
                    templateUrl: 'module/general/views/main.html',
                    controller: 'mainController'
                },
                'navbar@index': {
                    templateUrl: 'module/general/views/navbar.html'
                }
            },
            resolve: {
                dep: ['$ocLazyLoad',
                    function ($ocLazyLoad) {

                        return $ocLazyLoad.load(['module/general/mainController.js']).then(function (response) {

                        });
                    }]
            }
        })
        .state('signup', {
            //parent: 'index',
            url: '/register',
            views: {
                'content': {
                    templateUrl: 'module/auth/views/signup.html',
                    controller: 'authController'
                }
            },
            resolve: {
                dep: ['$ocLazyLoad',
                    function ($ocLazyLoad) {
                        return $ocLazyLoad.load(['module/auth/authController.js']);
                    }]
            }
        })
        .state('timeline', {
            parent: 'index',
            url: '/timeline',
            views: {
                'content': {
                    templateUrl: 'module/timeline/views/timeline.html',
                    controller: 'timelineController'
                }
            },
            data: {
                authenticated: true
            },
            resolve: {
                dep: ['$ocLazyLoad',
                    function ($ocLazyLoad) {
                        return $ocLazyLoad.load(['module/timeline/TimelineController.js']);
                    }]
            }
        })
        .state('profile', {
            parent: 'index',
            url: '/profile/:id',
            views: {
                'content': {
                    templateUrl: 'module/profile/views/profile.html',
                    controller: 'ProfileController'
                }
            },
            data: {
                authenticated: true
            },
            resolve: {
                dep: ['$ocLazyLoad',
                    function ($ocLazyLoad) {
                        return $ocLazyLoad.load(['module/profile/ProfileController.js']);
                    }],
            }
        });
});
config.route.js

var app = angular.module("ng-app",[
   'ui.router',
   'oc.lazyLoad',
   'ngMaterial',
   'ngAnimate',
   'ngMessages',
   'ngAria',
   'ngAA',
   'ngRoute',
   'ngCookies',
   'thatisuday.dropzone'
]);
app.config(function ($stateProvider, dropzoneOpsProvider, $authProvider, $urlRouterProvider, $httpProvider, $mdThemingProvider, $mdIconProvider, $locationProvider, site_settings) {

$locationProvider.html5Mode(true);
$urlRouterProvider.otherwise(function ($injector) {

    var $state = $injector.get("$state");
    $state.go('login');
});
$mdIconProvider.defaultIconSet('assets/angular-material-assets/img/icons/core-icons.svg', 24);


$authProvider.signinUrl = site_settings.api_url + 'authenticate';
$authProvider.signinState = 'login';
$authProvider.signinRoute = '/login';
$authProvider.signinTemplateUrl = 'module/auth/views/login.html';
$authProvider.afterSigninRedirectTo = 'timeline';
$authProvider.afterSignoutRedirectTo = 'login';

$stateProvider
        .state('index', {
            abstract: true,
            views: {
                '@': {
                    templateUrl: 'module/general/views/main.html',
                    controller: 'mainController'
                },
                'navbar@index': {
                    templateUrl: 'module/general/views/navbar.html'
                }
            },
            resolve: {
                dep: ['$ocLazyLoad',
                    function ($ocLazyLoad) {

                        return $ocLazyLoad.load(['module/general/mainController.js']).then(function (response) {

                        });
                    }]
            }
        })
        .state('signup', {
            //parent: 'index',
            url: '/register',
            views: {
                'content': {
                    templateUrl: 'module/auth/views/signup.html',
                    controller: 'authController'
                }
            },
            resolve: {
                dep: ['$ocLazyLoad',
                    function ($ocLazyLoad) {
                        return $ocLazyLoad.load(['module/auth/authController.js']);
                    }]
            }
        })
        .state('timeline', {
            parent: 'index',
            url: '/timeline',
            views: {
                'content': {
                    templateUrl: 'module/timeline/views/timeline.html',
                    controller: 'timelineController'
                }
            },
            data: {
                authenticated: true
            },
            resolve: {
                dep: ['$ocLazyLoad',
                    function ($ocLazyLoad) {
                        return $ocLazyLoad.load(['module/timeline/TimelineController.js']);
                    }]
            }
        })
        .state('profile', {
            parent: 'index',
            url: '/profile/:id',
            views: {
                'content': {
                    templateUrl: 'module/profile/views/profile.html',
                    controller: 'ProfileController'
                }
            },
            data: {
                authenticated: true
            },
            resolve: {
                dep: ['$ocLazyLoad',
                    function ($ocLazyLoad) {
                        return $ocLazyLoad.load(['module/profile/ProfileController.js']);
                    }],
            }
        });
});
在这段代码中,当我在没有身份验证的情况下移动到状态时间线/配置文件时,它们允许我转到我已经使用的状态

data:{
    authentication:true
 }
但这对我不起作用,没有错误。我也尝试过“requiresLogin:true”,但它也不起作用。登录/注册工作正常。 在下面给出的图片中,timeline.html和其他html已经加载,并且它们从后端得到响应,它会重定向回登录。这应该发生在前端而不是后端


代码没有错误,只是npm中有两个名为ui router的包。所以我使用(ui router 1.0 alpha版)安装了ui router

而不是

npm install angular-ui-router 

并删除了旧的节点包。

代码没有错误,只是npm中有两个名为ui router的包。因此,我使用(ui router版本1.0 alpha)安装了ui router

而不是

npm install angular-ui-router 
并删除了旧的节点包