我正在使用Angular和UI路由器构建一个小型搜索引擎。我试图找出从主页(搜索提交)过渡到结果页面的最佳方式。
我的主页路由(UI路由器中的状态)
.state('home', {
url: '/',
然后我这是我的搜索结果页面
.state('search', {
url: '/search?q',
我希望用户在主页上提交的搜索字词位于搜索结果页面的网址中。如何使用UI路由器做到最好?似乎这里可能需要抽象状态来预加载主页(模板,控制器和URL),然后有另一个状态,如
.state('home', {
url: '?q',
其中q用于查询参数...但它似乎不起作用。我的想法是在这里,还是我的代码中有一个我不明白的错误?
答案 0 :(得分:0)
您可以通过$state.go
API将查询参数传递给UI路由器,如下所示:
var params = { q: <user-input> }
$state.go( 'search', q )
<a ui-sref="search({ q:<user-input> })">Search</a>
$州API文档 - link