Daha önce bunun için ng-route kullanmıştım ve gayet iyi çalışıyordu, ancak UI Router ile bağlantılar artık tıklanmıyor ya da en azından çoğu zaman değil. Çok rastlantısal olduklarında, kullandıkları html şablonlarını görüntülemiyorlar.Ui-sref tıklanabilir linkler üretemiyor/çalışmıyor
HTML:
<head>
<title>Tutorial</title>
<script src="lib/angular/angular.js"></script>
<script src="lib/angular/angular-ui-router.min.js"></script>
<script src="js/app.js"></script>
<script src="js/controllers.js"></script>
</head>
<body>
<ng-view></ng-view>
<ul class="menu">
<li><a ui-sref="view1">view1</a></li>
<li><a ui-sref="view2">view2</a></li>
</ul>
.js
angular.module('myApp', [
'myApp.controllers',
'ui.router'
]);
angular.module('myApp').config(function($stateProvider, $urlRouterProvider) {
$stateProvider.state('view1',{
url: '/view1',
controller:'Controller1',
templateUrl:'/view1.html'
}).state('view2', {
url: '/view2/:firstname/:lastname',
controller: 'Controller2',
resolve: {
names: function() {
return ['Misko', 'Vojta', 'Brad'];
}
},
templateUrl: '/view2.html'
});
$urlRouterProvider.otherwise('/view1');
});
angular.module('myApp.controllers', []).controller('Controller1', function($scope, $location, $state) {
$scope.loadView2=function() {
$state.go('view2', {
firstname: $scope.firstname,
lastname: $scope.lastname
});
};
}).controller('Controller2', function($scope, $stateParams, names) {
$scope.firstname = $stateParams.firstname;
$scope.lastname = $stateParams.lastname;
$scope.names = names;
});
Ben angularjs üzerinde SitePoint e-kitap yönergeleri takip ediyorum, bu yüzden ben olduğum şey gerçekten emin değilim yanlış ya da neyi özledim.
http://plnkr.co/edit/amh3nZmyB7lC2IQi3DIn
İşaretlemenizin herhangi bir yerinde bir "ui-view" göremiyorum, bu nedenle durumlarınızın büyük olasılıkla görüntülenmesi ve enjekte edilmemesi görüntüleniyor – JAAulde
@JAAulde Bunu ng görünümü yerine veya bununla birlikte kullanmalı mıyım? –
Ana HTML dosyanızda tek bir "ui-view" bulunmalıdır. Üst düzey durumlarınız burada oluşturulacak ve enjekte edilecektir. "Ng-view" öğesine ihtiyacınız yok. Devletlerin sübvansiyonları olabilir ve bir altkümeye sahip olan bir devletin her bir şablonu, işlenmiş kaynaklarının enjekte edileceği bir “ui-görüş” e sahip olmalıdır. – JAAulde