Angular ui-router针对不同视图的不同母版页布局



我正在解决一个ui-router问题。

我已经成功地配置了主母版页,它将在整个子页面中使用。子页面内容也被正确获取。

现在,我卡住的地方是登录/注册视图。因为它们不会是同一个主布局的一部分,它们将是一个简单的布局,在页面的中心有html控件,没有别的。我很难理解如何在ui-router逻辑中包含登录/注册。

这是我目前为止写的:

ui-router逻辑:

app.config(function ($stateProvider, $urlRouterProvider, $locationProvider) {
    $urlRouterProvider.otherwise("/home");
    $locationProvider.html5Mode(true);
    $stateProvider
      .state("home", {
          url: "/home",
          templateUrl: "/views/home/index.html",
          controller: "homeController",
          contrllerAs: "homeCtrl",
          data: {
              css: '/assets/css/homepage.css'
          }
      })
        .state("ourteam", {
            url: "/ourteam",
            templateUrl: "/views/home/our-team.html"
        })
    .state("accountlogin", {
        url: "/accountlogin",
        templateUrl: "/views/home/login.html",
        controller: "loginController"
    })
});

母版页(不是用于登录的)缩短版标记:

<!DOCTYPE html>
<html>
<head>
    <base href="/" />
</head>
<body ng-app="app" ui-router-styles class="fixed-footer home-page">
    <header class="header">
        <div class="container">
            <nav class=" navbar">
                <div id="navbar" class="navbar-collapse collapse">
                    <ul class="nav navbar-nav navbar-nav-relm">
                        <li class="active"><a ui-sref="home">Home</a></li>
                        <li class="dropdown">
                            <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Borrowers <span class="caret"></span></a>
                            <ul class="dropdown-menu">
                                <li><a ui-sref="Link1">Link1</a></li>
                                <li><a ui-sref="Link2">Link2</a></li>
                                <li><a ui-sref="Link3">Link3</a></li>
                            </ul>
                        </li>
                        <li><a ui-sref="ourteam">Our Team</a></li>
                        <li><a ui-sref="contact">Contact</a></li>
                        <li><a ui-sref="accountlogin">Login</a></li>
                    </ul>
                </div>
            </nav>
        </div>
    </header>
    <!-- START CHILD CONTENT -->
 <ui-view></ui-view>
    <!-- END CHILD CONTENT -->
   </body>
</html>

登录页面(缩短版):

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body class="login">
    <div class="content" ng-app="app">
        <!-- BEGIN LOGIN FORM -->
        <div class="login-form" ng-controller="loginController">
            <div class="form-group">
                <label>Email</label>
                <input data-ng-model="loginData.userName" required autofocus/>
            </div>
            <div class="form-group">
                <label>Password</label>
                <input data-ng-model="loginData.password" required/>
            </div>
            <div>
                <button type="submit" ng-click="Login()">Login</button>
            </div>
        </div>
        <!-- END LOGIN FORM -->
    </div>
</body>
</html>

现在什么是正确的方式来重定向到新的布局(或合并到现有的母版页)?

在'Login function'中,首先尝试使用Passport和JWT等后端方法和服务对用户进行身份验证。然后重定向到特定的状态,如果没有错误。
尝试使用JSON Web令牌验证Node.js API

最新更新