ui-router 中动态构造的 ui-sref 属性 [英] Dynamically constructed ui-sref attribute in ui-router
本文介绍了ui-router 中动态构造的 ui-sref 属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
I am new to angular and especially ui-router.
Here is a link:
<a ui-sref="/topic/{{topic.id}}">SomeText</a>
The link is dynamically populated.
So when I try to access that state from my config like this:
.state('topics/:topicId',{
url:"",
templateUrl: "",
controller: ""
})
I get this error message:
Error: Could not resolve '/topics/myTopic' from state 'topics'
In the above: myTopic
is a variable name.
解决方案
You are almost there. Just the parameter must be part of the URL definition, not the name of the state:
.state('topics',{
url: '/{id:[0-9]{1,8}}', // we can also add some constraint, like int id only
templateUrl: "",
controller: ""
})
And how to call it (where currentItem.id
would be injected dynamically as a part of some ng-repeat)
<a ui-sref="topics({id:currentItem.id})">SomeText</a>
Because ui-sref
means: ui-sref='stateName({param: value, param: value})
. More info here:
这篇关于ui-router 中动态构造的 ui-sref 属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文