.state('check', {
url:'/check',
templateUrl: 'views/List.html',
controller: 'ListCtrl'
})
$state.go('check')
有效但
location.href='/check'
没有。有了这个我得到:
Cannot GET /check/
如果我重新加载页面,那么它也会导致无法解决GET错误,但只有在$state.go
重定向
我基本上希望能够在该URL被点击时加载页面,无论它是通过代码命中还是通过浏览器重新加载。浏览器重新加载似乎总是失败。
如何在重定向到网址时触发特定状态?
$locationProvider.html5Mode({
enabled: true,
requireBase: false
});
启用了html5模式,因此url应该可以正常工作。
答案 0 :(得分:0)
问:您在哪个组件中定义了$ locationProvider
A:控制器。
最佳做法是将$stateProvider
定义为module.config
它将保证在任何模块控制器之前加载状态。
app.config(['$locationProvider', '$stateProvider', '$urlRouterProvider',
function($locationProvider, $stateProvider, $urlRouterProvider) {
// ...
}
在您的情况下,您在加载控制器之前调用URL,因此未定义任何状态。这就是您收到错误Cannot GET /check/