例如我有这样的代码:

<div class="panel" ui-sref="product.details({id: someId})">
  <div class="panel-sub-link">
    some another event is here
  </div>
</div>


jsfiddle

javascript - AngularJS:面板和内部链接上的ui-sref-LMLPHP

当我单击子链接元素时,是否有可能不调用父级ui-sref?这只是一个抽象示例...详细信息:例如,当我单击箭头时,我有一个面板和一个滑块(带有导航箭头)-我不需要更改状态。我怎样才能做到这一点?

最佳答案

使用ui-sref不是在状态之间导航的唯一选项。我们还有$state.go对吗?

代替ui-sref,您可以简单地添加ng-click来引用控制器中执行$state.go("product.details...")的功能。而且,在您不想单击时访问状态的面板中,您可以使用$event.stopPropogation

像这样:

<div ng-app="myApp" ng-controller="AppController">
  <div class="panel" ng-click="navigate(someId)">
    <div class="panel-sub-link" ng-click="$event.stopPropagation();">
      some another event is here
    </div>
  </div>
</div>


并且,navigate在控制器中的功能如下:

$scope.navigate = function(someId) {
  console.log("going to product details")
  $state.go("product.details", {
    id: someId
  })
}


那应该做!

working sample example

关于javascript - AngularJS:面板和内部链接上的ui-sref,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43213794/

10-09 07:07