【问题标题】:AngularJS hashbang mode duplicating URL pathAngularJS hashbang模式复制URL路径
【发布时间】:2013-12-04 15:54:04
【问题描述】:

我正在开发一个带有 Laravel 4 后端的 AngularJS 应用程序。我最近不得不在 $locationProvider 服务中从 html5 切换到 hashbang 模式以支持 IE。该应用程序工作正常,但所有浏览器中的 hashbang 后 URL 路径都重复。

例如。 - http://domain.com/resources/resource 显示为 http://domain.com/resources/resource#!/resources/resource

我在下面列出了我的主要模块。任何帮助将不胜感激。

angular.module('agent', ['agent.controllers', 'agent.directives', 'ngRoute']).
    config(['$routeProvider', '$locationProvider',
    function($routeProvider, $locationProvider) {
        //   

        $locationProvider.hashPrefix('!');

        $routeProvider
            .when('/resources/resource', {
                template: templatePath,
                controller:  'ResourcessController'
            })
            .otherwise({redirectTo: '/resources/resource'});
    }]);

【问题讨论】:

    标签: javascript php angularjs laravel


    【解决方案1】:

    我已经多次看到这个问题。我发现的唯一解决方法是直接转发到角度页面。以以下为例:

    http://example.com/product/1234#/1234

    如果这来自另一个页面,您可以直接链接到哈希链接:

    http://example.com/product#/1234

    现在 URL 不再重复,例程仍按预期工作。基本上,这里的重点是根据这是服务器/控制器页面还是客户端/角度页面来进行路由。我不确定这真的是最好的答案,因为我还在学习角度。希望其他人也有很好的建议!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-14
      • 2014-08-18
      • 2014-08-04
      • 2014-10-23
      • 1970-01-01
      • 2017-07-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多