【问题标题】:Misleading breadcrumbs when using back-button with AngularJS在 AngularJS 中使用后退按钮时会出现误导性面包屑
【发布时间】:2013-04-07 13:56:39
【问题描述】:

我正在使用ngBreadcrumbs-Service from Enrico Pulatzo (jsfiddle)。只要用户单击面包屑,推送面包屑和取消注册就可以正常工作。但是,如果使用后退按钮或其他链接,则面包屑不会更新,并且在遵循新路线时会显示最后一个条目两次。如何更改此行为以始终拥有正确的面包屑路径?

Home > Users

点击用户并返回后。面包屑导航应仅包含“主页”。

Home > Users > Users

点击用户后,导航回来,再次点击用户。

【问题讨论】:

  • 看起来它只支持并提到它在您单击时删除,可能值得在 GitHub 项目上打开一个问题进行澄清?

标签: javascript caching angularjs breadcrumbs


【解决方案1】:

我添加了一个 $location.path 观察程序 from this answer 以减少包含面包屑的数组,现在一切正常。

$rootScope.$watch(function() {
    return $location.path();
}, function(newValue, oldValue) {
    if (newValue !== oldValue) {
        if (newValue.split('/').length < oldValue.split('/').length) {
            data.splice(1, data.length);
  }
        $rootScope.$broadcast('breadcrumbsRefresh');
    }
}, true);

【讨论】:

    猜你喜欢
    • 2022-01-11
    • 2016-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多