请告知我如何在AngularJS中进行重定向? 我试着用几个选项:
$location.path('/TemplateView');
当我这样做时,我可以看到一些获取请求,但页面保持不变。
我也尝试过:$scope.$state...
但Angular不承认它。
谷歌搜索没有帮助。
答案 0 :(得分:1)
要使用$location.path()
,您必须做三件事:
注入ngRoute模块:
angular.module('app', ['ngRoute']);
定义路线:
angular.module('app')
.config(['$routeProvider', function ($routeProvider) {
$routeProvider
.when('/TemplateView', {
controller: 'TemplateCtrl',
templateUrl: 'templates/index.html'
});
}]);
在控制器中进行重定向(假设您将$location
注入控制器)
$location.path('/TemplateView');
注意:强> 更改路由/模板并不一定意味着您必须查看GET请求或任何其他请求。 AngularJS是一个单页框架,因此如果您的浏览器已经下载了所有部分,则更改视图/控制器将不会对服务器进行任何调用(只需使用本地内容进行操作,您的浏览器已经下载)。