Angular route 1.3删除尾部斜杠

时间:2015-03-16 11:20:26

标签: angularjs migration angular-routing

2015年3月17日编辑:似乎这是某种类型的hashbang模式链接重写问题 在迁移说明1.2>上找不到多少1.3关于Hashbang模式的变化,但这是我观察到的:

  • 1.2:在Angular 1.2中,指向index.html的链接(href =" index.html")始终产生http:///index.html
  • 1.3:在Angular 1.3中,指向index.html的链接(href =" index.html")在首次点击时产生http:///index.html#/,http:/// index。 html#on second(松开尾随斜线)
    [解决方案是使用href ="#/ index.html"]

非常欢迎任何解释!


我有一个简单的设置,用于Angular水疗中心的基本导航和angular-route模块。我使用Angular 1.2.17 成功使用,但使用Angular 1.3.14 失败,因为它会删除尾随/

我实际上是第一次使用Angular 1.3.x工作但是第二次失败。 另请参见plunker示例(相同的代码,一个使用Angular 1.2.x,其他Angular 1.3.x):

我的javascript文件的内容:

var logBookApp = angular.module('LogBookApp', ['ngRoute']);

logBookApp.config(
    function ( $routeProvider) {
        $routeProvider
        .when('/', { templateUrl: 'tmpls/home.tmpl.html', controller: 'HomeCtrl as logbookHome' })
        .when('/LogBook/:id', { templateUrl: 'tmpls/logbookform.tmpl.html', controller: 'LogBookFormCtrl as logbookForm' })
        .otherwise({ redirectTo: '/' });
    });

html页面的内容:

<!DOCTYPE html>
<html >
<head>
    <title>Logbook tracking</title>
</head>
<body ng-app="LogBookApp">
  <div ng-controller="LogBookCtrl as logbook">
    <a href="index.html">Test direct link home !</a>
    <a href="#">Test hash tag link!</a>
  </div>    
  <div ng-view>
  </div>
  <script src="js/lib/angular.js"></script>
  <script src="js/lib/angular-route.js"></script>
  <script src="js/LogBookapp.js"></script>
</body>
</html>

欢迎任何建议! 我曾尝试使用角度资源模块(https://docs.angularjs.org/api/ngResource/service/ $资源)来指定NOT来删除trailings,但这并没有成功。

app.config(['$resourceProvider', function($resourceProvider) {
  $resourceProvider.defaults.stripTrailingSlashes = false;
}]);

0 个答案:

没有答案