2013-11-25 6 views
2

У меня есть код маршрутизации следующего характера Экспресс:Эксплуатационная маршрутизация, противоречащая маршрутизации AngularJS.

app.get("/profile/:param", function (req, res) 

Это совпадающий с маршрутизацией пути, предоставленной AngularJS. Например, когда загружается угловое представление о природе /profile/someparam#view1, новый шаблон URL подбирается экспресс, который предполагает, что он имеет тип /profile/<someparam>. Это приводит к тому, что контроллер, связанный с view1, будет называться бесконечно, тем самым разбивая страницу.

Как решить эту проблему?

ответ

0

Я был в состоянии найти решение отсюда: AngularJS and ExpressJS routing conflicts. В основном, в файле угловой маршрутизации templateURL необходимо предварительно отложить с помощью '/'. Для, например, в моем угловом коде маршрутизации, я должен был изменить

$routeProvider.when('/routeName', { 
     templateUrl: 'view1.html', 
     controller:'rcontroller' 
}); 

в

$routeProvider.when('/routeName', { 
     templateUrl: '/view1.html', 
     controller:'rcontroller' 
}); 
+0

Это обычная практика, чтобы поместить свои шаблоны в папку под названием «обертоны», которые имеют мало шансов конфликтует с какой-либо API бэкэнд. Взгляните на проект [angular-seed] (https://github.com/angular/angular-seed/tree/master/app/partials) –

+0

@MichaelTang, да, я поместил свои представления в каталог partials, в Генеральная. Но даже если мои взгляды были в частичном каталоге, моя проблема не была бы решена. –

Смежные вопросы