Symfony2使用带有Angular HTML5路由的资产

nie*_*ber 5 symfony assetic angularjs route-provider

我使用带有Symfony的棱角分明的前端.当我声明我$routeProvider必须包括我的时候,/app_dev.php/我将html 5模式设置为true : $locationProvider.html5Mode(true);.

$routeProvider.when('/app_dev.php/admin', 
                    {templateUrl: 'index.html', controller:   AdminCtrl})
              .when('/app_dev.php/admin/schedule/', 
                    {templateUrl: 'schedule.html', controller: ScheduleCtrl})
              .otherwise('/app_dev.php/admin');
$locationProvider.html5Mode(true);
Run Code Online (Sandbox Code Playgroud)

VS

$routeProvider.when('/admin', 
                    {templateUrl: 'index.html', controller:   AdminCtrl})
              .when('/admin/schedule/', 
                    {templateUrl: 'schedule.html', controller: ScheduleCtrl})
              .otherwise('/admin');
$locationProvider.html5Mode(true);
Run Code Online (Sandbox Code Playgroud)

问题是当我想使用生产环境时,我必须记住要更改这些路由.

我有一个很好的方法来处理这个问题,assetic当我做一个转储来检测我正在为devvs 做转储时,prod或者我只是痛苦地记得改变目标环境的路径?

谢谢

hd.*_*man 6

尝试使用FOSJsRoutingBundle.此捆绑包允许您在JavaScript代码中公开路由.这意味着您将能够使用给定参数生成URL,就像使用Symfony2核心中提供的Router组件一样. https://github.com/FriendsOfSymfony/FOSJsRoutingBundle