クライアント側のAngularアプリを書いています.Angularのng-template
.
だから、私はこれを持っていますnavbar
:
<nav class="navbar navbar-inverse" >
<div class="container-fluid">
</div>
<div class="collapse navbar-collapse" id="myNavbar">
<ul class="nav navbar-nav">
<!--<li class="active"><a href="#">Home</a></li>-->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Events <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Create Event</a></li>
<li><a href="#"></a></li>
</ul>
</li>
<li><a href="#">About</a></li>
</ul>
<ul class="nav navbar-nav navbar-right" ng-include="getTemplate()">
</ul>
</div>
</div>
</nav>
わかりました、私が使用する最後の<ul>
タグng-include="getTemplate()"
で、 getTemplate はこの関数です:
<script type="text/javascript">
$(function () {
var getTemplate = function () {
return "notauth";
}
})
</script>
基本的に、これは同じテンプレートを返しますが、ロジックを追加する前にこれを機能させたいだけです。
「notauth」テンプレートは次のとおりです。
<script type="text/ng-template" id="notauth">
<li><a ui-sref="signup"><span class="glyphicon glyphicon-user"></span> Sign Up</a></li>
<li><a ui-sref="login"><span class="glyphicon glyphicon-log-in"></span> Login</a></li>
</script>
navbar をすべてのビューで同じにしたいので、これは私の index.html ページ内にあることに注意してください。ただし、ユーザーの状態に応じてテンプレートを変更します。ユーザーがログインしている場合は auth テンプレートを使用し、そうでない場合は notauth テンプレートを使用します。
問題は、これが機能しないことであり、問題が何であるかを理解できません。