Я новичок в угловой и очень очень рад этому. Я пытаюсь поставить свою верхнюю навигацию в директиву, так что она может быть 1) resuable 2) сделать мой html более удобным для чтенияУгловая простая директива не работает
Однако я не могу заставить свою директиву topMenu работать на жизнь меня. можно ли взглянуть на мою скрипку и посмотреть, что я делаю неправильно? Спасибо миллиона, им теряют волосы лол
http://jsfiddle.net/g6pb0m4a/ здесь подаст menu.js
//define menu controller
var menu = angular.module('MenuApp', [])
menu.controller('MenuCtrl', [function() {
var self = this;
self.active= '1';
self.navigation = [
{
menutext:"Home",
url:"#/"
},
{
menutext:"About App",
url: "#/aboutapp",
submenu:[
{
menutext:"Pricing",
url: "#/pricing"
}
]
}
];
}]);
menu.directive('topMenu', function() {
return {
restrict: 'E',
template: '<h2>test</h2>'
};
});
здесь мой индекс
<!DOCTYPE html>
<html>
<head>
<title>Fit Bit App</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.9/angular.min.js"></script>
<link href="css/default.css" rel="stylesheet">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet">
<script src ="app/controllers/menu.js"></script>
</head>
<body ng-app="MenuApp">
<header>
<nav class="navbar navbar-inverse" data-ng-controller = "MenuCtrl as menuCtrl">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">WebSiteName</a>
</div>
<div class="collapse navbar-collapse" id="myNavbar">
<ul class="nav navbar-nav" data-ng-repeat = "menuitem in menuCtrl.navigation">
<li ng-if="!menuitem.submenu"><a href={{menutext.url}}>{{menuitem.menutext}}</a></li>
<li class="dropdown" ng-if="menuitem.submenu"><a class="dropdown-toggle" data-toggle="dropdown" href="#">{{menuitem.menutext}}<span class="caret"></span></a>
<ul class="dropdown-menu">
<li data-ng-repeat = "submenu in menuitem.submenu"><a href={{submenu.url}}>{{submenu.menutext}}</a></li>
</ul>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="#"><span class="glyphicon glyphicon-user"></span> Sign Up</a></li>
<li><a href="#"><span class="glyphicon glyphicon-log-in"></span> Login</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div><top-menu></top-menu></div>
</body>
</html>
Вам необходимо загрузить в меню jsfiddle скрипты на корпусе или голове. http://jsfiddle.net/jL8mq5hc/. то есть. выпадающая панель левой панели «no-wrap -in body». В противном случае вы загружаете скрипты на загрузку документа с помощью опции «load». – PSL