2015-10-07 10 views
9

における動的状態とのparams私はそうのように、NG-繰り返し内部で動的UI-SREFディレクティブを設定したいUI-ルータの使用の両方:変更UI-SREF

がある手順
<a ng-repeat="step in steps" ui-sref="{{step.state(step.param)}}"></a> 

を補間エラーをスロー

var steps = [{state: 'foo', param: {id: 'bar'}}, {...}]; 

:「状態オブジェクト」自身の状態とPARAMオブジェクトとそれぞれのアレイ。一方、唯一の状態ORのparamを渡すと、動的に以下の偉大ごとに動作します:

// Pass only dynamic state works great 
<a ng-repeat="step in steps" ui-sref="{{step.state}}"></a> 
// Pass only dynamic param works great 
<a ng-repeat="step in steps" ui-sref="foo(step.param)"></a> 

私はハック回避策としてNGクリックし使用してみましたが、それはUI-SREF-アクティブとうまく再生できませんでした:

<a ng-repeat="step in steps" ng-click="$state.go(step.state, step.param)"></a> 

状態とパラメータの両方を動的に渡すのに慣れている人はいますか?

答えて

19

私はui-srefが()の中にあるものを式として解析すると思います。

これだけです。

<a ng-repeat="step in steps" ui-sref="{{step.state}}(step.param)"></a> 

上記がうまくいくかどうかはわかりませんが、それが私が試してみたいものです。

+1

マジック、それは働いた。ありがとうございました! –

+3

ui-routerは動的変数から 'href'属性も作成しますが、変更時には更新されず、リンクは常に初期変数値を指します – untitled

+0

かなり素晴らしい – gsalgadotoledo

関連する問題