1

$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 バージョンの場合はそうではありません。両方の種類のトランジションでイベントを均等に発生させる方法はありますか?

4

5 に答える 5

1

ネストされた状態を使用しているように見えます。「詳細」と呼ばれる状態の別の URL であってはなりません。つまり、完全な URL は url: '/detail/{itemId}/zoom' です。

于 2013-08-02T08:30:26.440 に答える
0

次の前にキャレット ^ を使用して、ネストされた URL を短縮できます。

.state('detail.zoom', {
    url: '^/zoom/{itemId}',
    templateUrl: 'detail/zoom-partial.html'
})

<a href="#/zoom/{{item.id}}" >ZOOM IT!</a>
于 2014-02-13T10:22:14.137 に答える