Angularjs-路由 href 未评估

Angularjs-route href not evaluated

当我尝试在我的 Angularjs 中从 /players 路由到 /players/:playerId -porject URL 更新到玩家#/players/4173 而不是所需的 players/4173。这是 href:

<a href="#/players/4173">playerName</a>

这是路由配置:

when('/players/:playerId', {
      template: '<player-detail></player-detail>'
    })

我可以手动输入 .../players/4173 并且它有效,但是当单击它时它不起作用并且我看到 URL

.../players#%2Fplayers%2F4173

怎么了?

注意: 来自 Angularjs 自己教程的实时代码在我的浏览器中有同样的错误:

http://angular.github.io/angular-phonecat/step-8/app/

已解决:

/#!/players/playerId

他们在我遵循的教程的早期示例代码中错过了那个 (#!)。

我认为您应该删除 URL 中的 "players/" 部分,看看它是否有效。目前它是重复的。

您好,像这样更改您的标签

  <a class="pointer" ng-click="players(4173)" > 

JS

$scope.players = function(_data){
        $state.go('players',{'playersid':_data});
    }

config.js

.state('players', {
            url: '/players?playersid',
            templateUrl: 'views/xxgg/timeline.html',
            controller: 'campaignTimeline',
            params: {
                 'playersid': null
             }

        })

当您现在导航到 /index.html 时,您将被重定向到 /index.html#!/players,您的链接应该如下所示:

<a href="#!/players/4173">playerName</a>