Я пытаюсь сделать приложение AngularJS, но я не понимаю, почему он неправильно маршрутизировался, я следил за некоторыми инструкциями, но пока не работал.
Вот код:
index.html
<!DOCTYPE html>
<html lang="en" ng-app="App">
<head>
<meta charset="UTF-8">
<title>Example App</title>
</head>
<body>
<div ng-view></div>
<!-- Vendor libraries -->
<script src="lib/jquery-2.1.4.min.js"></script>
<script src="lib/angular.min.js"></script>
<script src="lib/angular-route.min.js"></script>
<!-- Application Files -->
<script src="app/app.js"></script>
<script src="app/home/controllers/HomeController.js"></script>
</body>
</html>
app.js
(function() {
'use strict';
var app = angular
.module('App', ['ngRoute']);
app.config(function($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'home/views/index.html',
controller: 'HomeController',
controllerAs: 'home'
})
.otherwise({
redirectTo: '/'
});
});
})();
HomeController.js
(function() {
'use strict';
angular
.module('App')
.controller('HomeController', HomeController);
function HomeController(){
var home = this;
}
})();
home index.html
<div>
Example text
</div>
заранее спасибо
Вы видите ошибки в консоли? Вероятно, вы получаете ошибку, связанную с отсутствием контроллера, поскольку 'home/controllers/HomeController'
не является правильным способом ссылки на HomeController. Вместо этого он должен читать: 'HomeController'
. Угловой будет выполнять работу, чтобы пересечь ваши контроллеры и найти ту, которая соответствует этой строке.
Здесь обновлено app.js:
(function() {
'use strict';
var app = angular
.module('App', ['ngRoute']);
app.config(function($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'home/views/index.html',
controller: 'HomeController',
controllerAs: 'home'
})
.otherwise({
redirectTo: '/'
});
});
})();
Кроме того, в HomeController.js вы повторно создаете экземпляр модуля "Приложение", включив в него скобки после имени. Вместо этого измените его более кратко:
(function() {
'use strict';
angular
.module('App')
.controller('HomeController', HomeController);
function HomeController(){
var home = this;
}
})();