【发布时间】:2013-08-02 08:02:59
【问题描述】:
我的结论是否正确,除非我使用 $state.transitionTo,否则 $stateChangeSuccess 不会触发?例如:
//in app config
.state('detail.zoom', {
url: '/zoom/{itemId}',
templateUrl: 'detail/zoom-partial.html'
})
//in html
<a href="#/zoom/{{item.id}}" >ZOOM IT!</a>
//in directive
scope.$state.transitionTo('detail.zoom', { itemId: item.id});
//in some controller
$scope.$on('$stateChangeSuccess', function () {alert('done transitioning!')});
transitionTo 中的事件触发 $stateChangeSuccess,但 href 版本并非如此。有没有办法为两种类型的转换平等地触发事件?
【问题讨论】:
-
可能你正在寻找 $routeChangeSuccess
-
@Codezilla,我可以对此进行测试,但我对此表示怀疑,因为这是对 angular-ui/ui-router 的引用,它是 angularjs 的单独库,而不是默认的 routeProvider。见这里link
-
哦,我现在知道我的错误是什么了。我有一个嵌套状态,但没有在 href 中使用完整的 url 路径。
标签: angularjs angular-ui-router angularjs-routing