1

我正在使用 requireJS 和 AngularJS 来编写我的 webapp。除了浏览器来回历史之外,它还可以很好地工作。这是我的网址的外观:

.when('/spaces', { ...

<a href="#spaces">这会将我带到页面,但后退和前进按钮什么也不做。如果我将其更改为 <a href="#/spaces">然后后退和前进按钮有效,但模板不会出现。

我正在使用这个样板:https://github.com/fdore/AngularJS-Boilerplate

你能看看这个并尝试解决它吗?

4

1 回答 1

1

当我尝试时,后退按钮对我有用。检查此 HTML:

<body ng-app="app">
  <div>

    <ul>
      <li><a href="#/">Home</a></li>
      <li><a href="#/about">About</a></li>
    </ul>
    <div ng-view=""></div>
  </div>
</body>

而这个JavaScript:

angular.module('app',['ngResource']);
angular.module('app').config(function($routeProvider){
        $routeProvider.when('/index',{
        template: "HELLO {{name}}",
        controller: "IndexCtrl"
    }).when('/about',{
        template: "HELLO {{name}}",
        controller: "AboutCtrl"
    }).otherwise({
      template:'HELLO {{name}}',
      controller: "IndexCtrl"
    })
});    

angular.module('app').controller('IndexCtrl',function($scope){
    console.log("Loading Index");
    $scope.name = "Index";
});
angular.module('app').controller('AboutCtrl',function($scope){
    console.log("Loading About");
    $scope.name = "About";
});

当我运行它时,导航可以通过单击链接和前进/后退按钮来工作。

于 2013-07-03T14:49:51.343 回答