Utilizzando ui-router vorrei impostare la direttiva ui-sref dinamicamente all'interno di un ng di ripetizione, in questo modo:cambiare sia stato e params dinamicamente in ui-sref
<a ng-repeat="step in steps" ui-sref="{{step.state(step.param)}}"></a>
Dove passi è un array di "oggetti statali" ciascuno con il proprio stato e param oggetto:
var steps = [{state: 'foo', param: {id: 'bar'}}, {...}];
che genera un errore di interpolazione. D'altra parte, passando solo lo Stato o param lavora dinamicamente grandi per di seguito:
// 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>
Ho provato ad utilizzare ng clic come una soluzione hacky, ma non ha giocato bene con l'interfaccia utente-sref-attiva:
<a ng-repeat="step in steps" ng-click="$state.go(step.state, step.param)"></a>
Qualcuno ha familiarità con un buon modo per passare dinamicamente sia stato che param?
La magia, ha funzionato. Grazie! –
Ricorda che l'ui-router creerà anche l'attributo 'href' dalla tua variabile dinamica ma non lo aggiornerà in caso di modifica e il collegamento rimarrà sempre al valore della variabile iniziale – untitled
Risolvi abbastanza impressionante – gsalgadotoledo