Angularjs を使用してヘッダーとコンテンツを含む MVC アプリケーションがあります。
Content で ng-app を定義し、$routeProvider を使用してコンテンツ ページを読み込みます。これはうまくいっています。
コンテンツ領域にページを表示したい場所からヘッダーにリンクがあります-これはng-appの外にあります。一番上に ng-app を設定せずにこれを行うにはどうすればよいですか? また、多くのマスター ページ Web サイトはこの UI デザインのみに基づいて構築されているため、同じことを達成する他の方法があるかどうかを提案します。
以下は、Master.cshtml と app.js を示す私のコードです。さらにコードを提供する必要がある場合はお知らせください -
Master.cshtml -
@inherits WebViewPage
<!DOCTYPE html>
<html xmlns:ng="http://angularjs.org">
<head>
<title>@ViewBag.PageTitle</title>
<script src="~/Scripts/jquery-1.11.1.min.js"></script>
<script src="~/Scripts/angular.js"></script>
<script src="~/Scripts/angular-route.js"></script>
<script src="~/Scripts/angularjs/app.js"></script>
</head>
<body>
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container-fluid">
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<li><a ng-href="#/headerLinkPage1">View cart</a></li>
</div>
</div>
</nav>
<div class="container-fluid" ng-app="rootApp">
<div ng-view></div>
</div>
</body>
</html>
app.js -
var serviceBaseAddress = 'http://localhost/MyWebApi/api/';
var rootApp = angular.module('rootApp', ['ngRoute', 'contentPage1', 'headerLinkPage1'])
.config(['$routeProvider',
function ($routeProvider) {
$routeProvider.
when('/contentPage1', {
templateUrl: '../ContentPage1/Index'
}).
when('/headerLinkPage1', {
templateUrl: '../HeaderLinkPage1/Index'
}).
otherwise({
redirectTo: '/contentPage1'
});
}]);