Имея странную ошибку здесь, я могу успешно переключиться на другие виды, но моя проблема в том, что даже простая переменная не может «достигать» представления. Кто-нибудь видит мою (возможно, тупую) ошибку?Переменная AngularJS не сохраняется для просмотра
index.html
<html ng-app="myApp">
<head>
<title>AngularJS oefening</title>
<link href="css/bootstrap.min.css" rel="stylesheet" />
</head>
<body>
<div class="container">
<header>
<a href="#/home">Home</a>
<a href="#/about">Over ons</a>
<a href="#/contact">Contact</a>
</header>
<div ng-view>
</div>
<footer>
Copyright...
</footer>
</div>
<script src="js/angular/angular.min.js"></script>
<script src="js/angular/angular-route.min.js"></script>
<script src="js/controller.js"></script>
</body>
Controller.js
angular.module('myApp', ['ngRoute'])
.config(moduleConfig);
moduleConfig.$inject = ['$routeProvider'];
function moduleConfig($routeProvider) {
$routeProvider.when('/', {
templateUrl: 'views/home.html',
controller: 'homeController',
contollerAs : 'homeCtrl'
})
.when('/home', {
templateUrl: 'views/home.html',
controller: 'homeController',
contollerAs : 'homeCtrl'
})
.when('/about', {
templateUrl: 'views/about.html',
controller: 'aboutController',
contollerAs : 'aboutCtrl'
})
.when('/contact', {
templateUrl: 'views/contact.html',
controller: 'contactController',
contollerAs : 'contactCtrl'
})
.otherwise({
redirectTo: '/'
});
};
angular.module('myApp')
.controller('homeController', homeController)
.controller('aboutController', aboutController)
.controller('contactController', contactController);
function homeController() {
this.msg = "Hello home";
};
function aboutController() {
this.msg = "Hello about";
};
function contactController() {
this.msg = "Hello contact";
};
home.html
<div>
<h1>{{homeCtrl.msg}}</h1>
</div>
Я проверил с жестко закодированным текстом, и он дает правильный вид, когда я использую меню для навигации. Я также пробовал записывать различные объекты (homeController, homeCtrl, ...). Только переменная этого НЕ определена, но она содержит только $ scope.
Заранее спасибо.
Вам не хватает <база HREF = "/" /> в головной секции. Попробуйте сделать console.log в каждом контроллере. Это должно позволить вам понять, правильно ли они подключаются. – Lazyexpert
Я не получаю никаких ошибок в консоли, поэтому почему я должен использовать тег ? Я попытался запустить консоль в контроллерах, и они появляются. ** EDIT: ** Он даже показывает тег
в HTML, когда я открываю представление (
) – StephanBКакую версию Угловая вы используете? –