1

私が取り組んでいるこの angularJS アプリケーションがあります。正常に動作するログイン ページがあります。ただし、メニューページへの遷移は機能しません。ビューが期待どおりに置き換えられていません。ここで何が欠けているか、間違っていますか? ここに私のアプリケーションからのいくつかの部分的なコードがあります:

var Admin = angular.module('Admin', ['ui.router', 'Admin.Services', 'angularUtils.directives.dirPagination']);

Admin.controller('LoginController', LoginController);
Admin.controller('AuthenticateHeader', AuthenticateHeader);

Admin.factory('AuthHttpResponseInterceptor', AuthHttpResponseInterceptor);
// Admin.factory('AuthHttpResponseInterceptor', AuthHttpResponseInterceptor);
Admin.config(['$stateProvider', '$httpProvider', '$locationProvider', '$urlRouterProvider',
    function ($stateProvider, $httpProvider, $locationProvider, $urlRouterProvider) {
        $httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest'; //This is important for angiforgen
        $locationProvider.hashPrefix('!').html5Mode(true);
        $urlRouterProvider.otherwise('/Login');
        $urlRouterProvider.when("/", "/Login");
        $stateProvider
        .state('Admin', {
            abstract: true,
            views: {
                'header': {
                    templateUrl: '/Navigation/UnAuthenticateHeader'
                },
                'content': {
                    templateUrl: '/Navigation/Content'
                }
            }
        })
        .state('Admin.login', {
            url: "/Login",
            views: {
                "content@": {
                    templateUrl: '/Account/Login',
                    controller: 'LoginController'//function ($scope,$stateParams) {

                   // }
                }
            }
        })
        .state('menu', {
            //  url: '/Menu',
            abstract : true,
            views: {

                templateUrl: '/Landing/Home',
                controller: function ($scope) {
                    $scope.message = 'menu controller';
                }
            },
            data: {
            proxy: 'Home'
        },
        })
        .state('menu.home',
        {
            url: '/Home',
            views: {
                'nav@menu': {
                    templateUrl: '/Navigation/AuthHeader',
                    controller: function ($scope) {
                        $scope.message = 'single message';
                    }
                },
                'content@menu': {
                    templateUrl: '/Landing/Index',
                    controller: function ($scope) {
                        $scope.message = 'Content menu';
                    }
                }
            }
        })
     //   $httpProvider.interceptors.push('AuthHttpResponseInterceptor');
    }]);

// インデックス ページ

<!DOCTYPE html>
<html lang="en" ng-app="Admin">
<head>
    <title>Admin Decision Support Engine</title>
    <base href="/" />
    @Styles.Render("~/Content/css")
</head>
<body>
    <table>
        <tr><td style="height:10%">
            <div ui-view="header"></div>    
        </td></tr>
        <tr><td style="height:90%">
           <div ui-view="content"></div>  
        </td></tr>
    </table>
    <footer id="footer">
        <span class="text-muted pull-left" style="margin-left: .5% !important;">Admin</span>
        <span class="text-muted pull-right" style="margin-right: 3% !important;">Admin </span>
    </footer>
    @Scripts.Render("~/Bundles/myScripts")
</body>
</html>

//ホームランディングページ

<div ui-view="nav" ng-cloak>
</div>

<section class="mainContent">
    <section class="Display">
        <div ui-view="content" ng-cloak>
        </div>
    </section>
</section>

//Partial Controller - ユーザーをメニューのホームページにリダイレクトする

if (!LoginInfo.Org) {
            var result = LoginUser(LoginFactory, ToastMessageFactory, LoginInfo);
            result.then(function (result) {
                if (result.success) {
                    saveLoginInformation(result.data[0]);
                    //todo redirect the user 
                    // $state.go('Admin.home');
                    $state.go('menu.home');
                }
            });

//非認証ヘッダー

    <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
        </button>
        <a class="navbar-brand" href="#">Admin Authenticate Decision Support Engine</a>
    </div>
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
        <ul class="nav navbar-nav pull-right">
            <li>
                <a id="Logout" role="button"><span class="glyphicon glyphicon-log-in">{{username}}</span></a>
            </li>
        </ul>
    </div>

</div>

//インデックス ページには次のメッセージのみが含まれます

{{ message }}
4

1 に答える 1