Angular.js переадресация сбоя браузера

Я пытаюсь сделать простой образец TODO с помощью angular.js (используя маршруты). Я мог бы открыть форму для создания новой задачи, но когда я нажимаю кнопку "Назад" (после создания новой), она всегда вызывает сбой моего браузера.

Я пробовал настроить маршрут "/" и использовать в другом случае, но я все равно получаю тот же результат.

Что я делаю неправильно?

//listTasks.htm

 
 
 
 <title>TODO List</title>
 
 
 <div data-ng-controller="TodoCtrl">
 <a href="#/new" target="_blank">New Task</a>
 <ul id="listTasks">
 <li data-ng-repeat="task in tasks">{{ task.name }}</li>
 </ul>
 </div>
 <div>
 
 </div>

//newTask.htm

<div>
 
 
</div>
<a href="#/list" target="_blank">Back</a>

PS: Я использую Firefox 26

1 ответ

Firefox сбой, потому что в вашем коде есть бесконечный цикл. Когда вы /listTasks в /listTasks он снова загрузит /listTasks в ng-view и так далее.

Вместо listTasks.htm содержащего маршрут, поместите маршрут на другую страницу, например index.htm

$routeProvider.when('/list',
 {
 controller:'TodoCtrl',
 templateUrl: 'listTasks.htm'
 })
 .when('/new',
 {
 controller:'TodoCtrl',
 templateUrl: 'newTask.htm'
 })
 .when('/',
 {
 redirectTo: '/list'
 });

Кстати, задачи не сохраняются, потому что для каждого экземпляра представления создается новый контроллер, но не связанная с этим проблема

См. Образец

licensed under cc by-sa 3.0 with attribution.