【问题标题】:AngularJs: $location.path not working correctlyAngularJs:$location.path 无法正常工作
【发布时间】:2015-04-02 22:00:50
【问题描述】:

我对 location.path() 有一个奇怪的问题,因为我没有被重定向到我想要的页面。 我的 HTML 文件中有如下链接:

<a title="{{woa.name}}" href="#/" ng-right-click="" href="javascript:void(0)"  ng-click="goToDetailPage(woa.pk,'workofart')">

对应的控制器代码如下:

appTreasure.controller("mySecondController", function($scope, $http, $location) {
    $scope.goToDetailPage = function(pk, selectedDetailsPage) {
        newLocation = selectedDetailsPage + '/' + pk;
        console.log("NEW: " + newLocation);
        $location.path(newLocation);
    }
    // some more unrelated code

当前 URL 是:&lt;base&gt;/#/beinspiredby,打印的 newLocation 类似于 &lt;base&gt;/#/workofart/someexistingpk。因此,我正在使用有效值构建新位置。

不幸的是,当我点击链接时,我被重定向到&lt;base&gt;/#/。 如果我手动转到&lt;base&gt;/#/workofart/someexistingpk,我会正确地进入我正在寻找的页面。

此外,在第三个控制器中,goToDetailPage 的代码完全相同。

我哪里漏掉了什么?

【问题讨论】:

标签: angularjs


【解决方案1】:

我想是因为你的锚元素中有一个 href 属性(实际上你有两个)。

试试这个

<a title="{{woa.name}}" ng-right-click="" ng-click="goToDetailPage(woa.pk,'workofart')">

【讨论】:

  • 谢谢。其实去掉href="#/"就够了,这是老生常谈了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-03
  • 2018-05-09
  • 2018-04-19
  • 2014-12-05
相关资源
最近更新 更多