私は ui-router の問題に取り組んでいます。
子ページ全体で使用されるメイン マスター ページを構成することができました。子ページのコンテンツも正しく取得されます。
今、私が立ち往生しているポイントは、ログイン/登録ビューです。それらは同じマスター レイアウトの一部ではないため、ページの中央に html コントロールを配置したシンプルなレイアウトになり、他には何もありません。UI にログイン/登録を含める方法を理解するのに苦労しています。 -ルーターロジック。
これは私がこれまでに持っているものです:
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>
その新しいレイアウトにリダイレクトする (または既存のマスター ページに組み込む) 適切な方法は何でしょうか?