Не използвам php, а по-скоро NodeJs. Това обаче забелязах, когато използвах маршрутизиране с AngularJs и бекенда.
Първоначално искане
Когато потребителят направи първоначална заявка за вашето приложение. Първо преминава през php логиката. (напр. $app->get('/requests', 'getRequests')
). В моя случай работата на php/back-end тук е две неща:
-
Получавайте данни от задния край само за SEO цели (повечето роботи не изпълняват client-js, така че трябва да вмъкнете тези данни, преди да изпратите страницата на потребителя)
-
Най-важното е, дайте индексния файл на вашето angular приложение заедно с всички JS. След като потребителят получи това, Angular стартира и сте готови.
Последващи заявки
След като потребителят зареди вашето приложение Angular. Сървърът (php) не знае нищо за това как потребителят се движи във вашето angular приложение . Не забравяйте, че angular е от страна на клиента и се опитва да намали броя на заявките към сървъра. Когато потребителят отиде до "(#)/requests/1234", той ще задейства .when('/requests/:id'
маршрут, но не и $app->get('/requests/:id', 'getRequest');
. Ако искате да получите достъп до крайна точка, която получава данни от вашата db, трябва да използвате $http
услуга в рамките на angular и направете нещо подобно $http.get('requests/1234')
и да получите данните по този начин.
Уведомете ме, ако това не е ясно, гласувайте за/приемете, ако е така :)