Использование FOSJsRoutingBundle с простыми html-страницами и angularJs

0

Как я спросил мой последний вопрос здесь я пытаюсь написать angularJs клиента, использующего Symfony2 RESTful API. Это мой угловой модуль:

var app = angular.module('myApp', ['ngRoute']);
app.factory("services", ['$http', function($http) {
var serviceBase = '/myproject/web/app_dev.php/api/';


var obj = {};
obj.getCategories = function(){
return $http.get(serviceBase + 'categories');
}
obj.getCategorie = function(CostumerID){
return $http.get(serviceBase + 'costumer?id=' + CostumerID);
}

obj.deleteCostumer = function (id) {
return $http.delete(serviceBase + 'deleteCostumer?id=' + id).then(function (status) {
return status.data;
});
};

return obj;
}]);

app.controller('listCtrl', function ($scope, services) {
services.getCategories().then(function(data){
$scope.categorie = data.data;
});
});

Я создал индексную страницу:

<!DOCTYPE html>
<html data-ng-app="myApp" ng-app lang="en">
<head>
<meta charset="utf-8">
<link href="/css/bootstrap/bootstrap.min.css" rel="stylesheet">

</head>
    <body>
        <div>
        <div class="container">
        <div data-ng-view="" id="ng-view"></div>
        </div>
        </div>
        <script src="/angular/angular.min.js"></script>
        <script src="/app/app.js"></script>
    </body>
</html>

Я обнаружил, что могу использовать FOSJsRoutingBundle для создания маршрута для моего приложения, но в документации я должен добавить эту две строки в свой код:

<script src="{{ asset('bundles/fosjsrouting/js/router.js') }}"></script>
<script src="{{ path('fos_js_routing_js', {'callback': 'fos.Router.setData'}) }}"></script>

Но я не использую ветку, и я не знаю, могу ли я использовать ее?

Также я не знаю, какой url должен я попросить в первый раз запустить приложение, потому что, когда я прошу индекс, у меня есть пустая страница :(

Может кто-нибудь помочь мне и сказать мне, что мне делать или что я пропустил?

  • 0
    Вы что-то пропустили после того, как « должны добавить эти две строки в мой код: »
  • 0
    Кстати, разработать пользовательский интерфейс как отдельный проект.
Показать ещё 6 комментариев
Теги:

1 ответ

0

Для конфигурации по умолчанию вы можете получить файлы FOSJSRouting js:

  1. @FOSJsRoutingBundle/Ресурсы/государственный /JS/router.js
  2. JS/fos_js_routes.js

Затем вы можете использовать assetic в symfony (прочтите эту документацию для получения дополнительной информации), включите js файлы выше и укажите выходные файлы, например, js/compiled.js. Затем обновите свой html примерно так

<!DOCTYPE html>
<html data-ng-app="myApp" ng-app lang="en">
<head>
<meta charset="utf-8">
<link href="/css/bootstrap/bootstrap.min.css" rel="stylesheet">

</head>
    <body>
        <div>
        <div class="container">
        <div data-ng-view="" id="ng-view"></div>
        </div>
        </div>
        <script src="/angular/angular.min.js"></script>
        <script src="/js/compiled.js"></script>
        <script src="/app/app.js"></script>
    </body>
</html>

В вашем приложении app.js вы можете получить URL-адрес от Symfony Routing таким образом

var url = window.Routing.generate(route, params, absolute);

Надеюсь, поможет

Ещё вопросы

Сообщество Overcoder
Наверх
Меню