我正在试图弄清楚如何使用UI路由器和AngularJS UI Bootstrap Typeahead完全正常工作来获取网址中的查询参数。
我有它工作(好吧......那种)。会发生什么事情,你必须搜索两次,一旦将查询放入网址,两次给你结果。不理想。
在做了一些搜索和阅读之后,我找到了this answer,似乎使用$ http服务将是一个很好的方法。但是,我只使用带有2个视图的 ONE 控制器。那还能用吗?
更新
链接中的答案提供了基于具有2个控制器的答案,而我只有一个控制器。
所以我的问题是使用$ http服务存储我的查询,使我能够使用UI路由器和AngularJS UI Bootstrap Typeahead将查询参数放入url中吗?这个SOLEY是UI路由器问题还是UI Bootstrap Typeahead在这个中起作用?
代码: 在我的控制器中,我初始化相关的代码如下:
$scope.searchTerms = $stateParams.searchTerms || '';
并在我的搜索功能中使用$ state.go,如下所示:
$state.go('search', {q: $scope.searchTerms});
就像我说的那样,但只是在提交了两次搜索查询之后。试图找出如何使其正常工作通常。