【问题标题】:Back button angularjs issue后退按钮angularjs问题
【发布时间】:2013-08-22 23:54:07
【问题描述】:

我的应用有这个路由代码

app.config(function ($routeProvider) {
            $routeProvider
                .when('',
                    {
                        controller:'competitionsController',
                        templateUrl:'competitions.html'
                    })
                .when ('/teams/',
                    {
                        controller:'teamsController',
                        templateUrl:'teams.html'
                    })
                .when('/squad/',
                    {
                        controller:'squadController',
                        templateUrl:'squad.html'
                    })
                .when('/player/',
                    {
                        controller:'playerController',
                        templateUrl:'player.html'
                    })
                .otherwise('');
        });

我显示信息的顺序如下比赛/团队/小队/球员

它运行良好,直到我从小队或球员页面点击导航器后退按钮,它不能正常工作,它会抛出“错误加载页面”并返回到比赛页面。我做错了什么?

您可以在此处检查其行为:http://balonmano100.p.ht/prueba/

谢谢

【问题讨论】:

  • 您能否提供一些有关错误的信息
  • XMLHttpRequest 无法加载 error.hostinger.eu?。 Access-Control-Allow-Origin 不允许来源balonmano100.p.ht。它会更改浏览器中的 url,删除 /prueba/ 并将其替换为 /teams/,它将是 /prueba/teams。向前它做对了,但向后它失败了

标签: javascript html button angularjs back


【解决方案1】:

您正在通过链接标签中的 href 属性设置您的网址。尝试使用ng-click$location 对象来设置浏览器的url。

<div ng-controller="myCtrl">
    <a href="#" ng-click="goTo('myUrlPart')">My Link</a>
</div>

然后在你的控制器中

angular.module('myApp',[])
    .controller('myCtrl',['$scope','$location',function($scope,$location){
        $scope.goTo = function(url){
            $location.path(url);
        }; // end goTo
    }]); // end myCtrl / myApp

【讨论】:

  • 我刚刚注意到你正在使用 jquery mobile,你可能想看看这个使用 Angularjs 和 JQM 和路由的解释:simonguest.com/2013/04/08/…
猜你喜欢
  • 2014-10-07
  • 2011-01-15
  • 2010-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多