我正嘗試構建一個應用程序,並使用bootstrap ui來使用手風琴和datepicker。 但是,當我嘗試通過ng-route模塊添加路由時,ui部分停止工作。Angular:使用Ui Bootstrap時的路由
沒有路由部分我NG-應用程序的定義如下所示:
var myApp= angular.module('myApp', ['ui.bootstrap']);
在angular tutorial他們說使用路由的事情,我必須把NG-應用程序的定義是這樣的:
var myApp= angular.module('myApp', [
'ngRoute',
'Controllers'
]);
所以結合這應該是這樣的:
var myApp = angular.module('myApp', [
'ngRoute',
'Controllers',
'ui.bootstrap'
]);
還是一個我錯了嗎?因爲這樣,它不起作用。
index.html文件看起來是這樣的:
!DOCTYPE html>
<html ng-app='myApp'>
<head>
<script src="lib/angular/angular.js"></script>
<script src="lib/angular/angular-route.js"></script>
<script src="js/app.js"></script>
<script src="js/controllers2.js"></script>
<script src="ui-bootstrap-tpls-0.9.0.js"></script>
<link rel="stylesheet" href="css/bootstrap-3.1.1-dist/css/bootstrap.css">
<link rel="stylesheet" href="css/app.css">>
</head>
<body>
<div ng-view></div>
</body>
</html>
controllers2.js沒有定義任何的控制器還:
var Controllers= angular.module('Controllers', []);
Controllers.controller('firstCtrl', ['$scope', '$http','$routeParams',
function ($scope, $http) {
}]);
Controllers.controller('secondCtrl', ['$scope', '$routeParams',
function($scope, $routeParams) {
}]);
app.js處理路由部分:
var myApp = angular.module('myApp', [
'ngRoute',
'Controllers',
'ui.bootstrap'
]);
myApp.config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/first', {
templateUrl: 'first.html',
controller: 'firstCtrl'
}).
when('/second', {
templateUrl: 'second.html',
controller: 'secondCtrl'
}).
otherwise({
redirectTo: '/first'
});
}]);
first.html和second.html不要做太多: first.html:
<h1>first</h1>
<a href="#/second">second</a>
<accordion close-others="oneAtATime">
<accordion-group heading="Heading 1" is-open="true">
TSome Content
</accordion-group>
<accordion-group heading="Heading 2">
Some Content
</accordion-group>
</accordion>
second.html:
<h1>second</h1>
<a href="#/first">first</a>
的first.html應該是這樣的,有工作的引導:
我添加了一些代碼部分,使其更清晰 – dummkind