Я довольно новичок в Угловом и очень новичок в использовании ui-router, поэтому я мог бы пропустить что-то очевидное.
Если я сам запустил страницу results.html, все, что от веб-API правильно связано с контроллером, отображается как ожидается.
Когда я начинаю с index.html и нажимаю кнопку, которая вызывает $ state.go(), я перехожу на страницу results.html .. но ни одна из данных с контроллера не появляется. Служба диспетчера & все еще вызывается - потому что я добавляю операторы console.log(), чтобы проверить, что объект, который мне нужен, возвращается после $ state.go(), и это - шаблон просто не регистрирует его.
Вот мой код для моего UI-маршрутизатора и главного контроллера:
// script.js
var app = angular.module('BN', ['ui.router']);
// configure our routes
app.config(function ($locationProvider, $stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('');
$stateProvider
.state('default',{
url:'/',
templateURL:'index.html',
controller: 'MainController'
})
.state('results', {
url:'/results',
controller: 'ResultsController',
controllerAs: 'vm',
templateUrl: 'Results/Results.html'
})
.state('instructor', {
url:'/api/instructors/:id',
templateUrl: 'Instructors/Instructor.html'
});
$locationProvider.html5Mode(true);
});
app.controller('MainController', MainController);
function MainController ($state) {
var vm = this;
vm.Submit=function(){
$state.go('results');
};
}
Так Results.html рендеров прекрасно запущенного по себе, но когда переходите к - контроллер называется, но не связаны с html-шаблон.
Где находится контролер Results? – Sajeetharan
находится в файле Results - но в моем файле index.html я включаю его после этого файла script.js. @Sajeetharan <сценарий SRC = "script.js"> <сценарий SRC = "/ Результаты/ResultsController.js"> –
Не могли бы вы создать plunker для этой проблемы? – Sajeetharan