我正在使用ui-router。我在搜索表单提交时遇到问题。我好像导航工作在状态之间(主页然后单击搜索按钮),它会将您带到搜索结果页面但是,在自动完成工作时不会执行搜索。我还注意到搜索条件不再在搜索框进入结果页面时。由于搜索字词没有转移到结果页面,我开始认为我有一个$ scope问题而且我不确定为什么......?
我的路线(状态)配置如下:
.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider)
$urlRouterProvider.otherwise('/');//default route for urls that don't have a specific route
$stateProvider
.state('home', {
url: '/',
views: {
'': {templateUrl: 'templates/home.html'},//relatively named
'navbar@home': {templateUrl: 'templates/navbar-home.html', controller: 'TypeaheadCtrl'},
'autocomplete@home': {templateUrl: 'templates/autocomplete.html', controller: 'TypeaheadCtrl'}
}
})
.state('search', {
url: '/search?searchTerms',
views: {
'': {templateUrl: 'templates/search.html'},//parent view, relatively named
'navbar@search': {templateUrl: 'templates/navbar.html', controller: 'TypeaheadCtrl'},
'searchDisplay@search': {templateUrl: 'templates/results.html', controller: 'TypeaheadCtrl'},
'pagination@search': {templateUrl: 'templates/pagination.html', controller: 'TypeaheadCtrl'}
}
})
我的状态和模板结构是否会干扰$ scope?是否有不同的方法来设置我的状态和模板并使$ scope以预期的方式工作?
注意:我在<a>
上使用ui-sref而不是<button>
用于&#34;搜索按钮&#34; - 这与它有什么关系吗?我使用ui-sref是因为它似乎比在控制器的函数调用中使用带有ng-submit和state.go()的<button>
更好。