Angularjs 将$routeProvider与$stateProvider一起使用
一开始我只是使用$routeProvider,如下所示,它给了我想要的东西Angularjs 将$routeProvider与$stateProvider一起使用,angularjs,angular-ui-router,Angularjs,Angular Ui Router,一开始我只是使用$routeProvider,如下所示,它给了我想要的东西 angular.module('angularProject', ['angularProject.filters', 'angularProject.services', 'angularProject.directives', 'angularProject.controllers']) .config(['$routeProvider', function($routeProvider) { $rout
angular.module('angularProject', ['angularProject.filters', 'angularProject.services', 'angularProject.directives', 'angularProject.controllers'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/home', {
title: 'Home',
templateUrl: 'partials/home.html',
controller: 'homeCtrl'
})
.otherwise({redirectTo: '/home'});
}]);
但当我还想使用$stateProvider时,它并没有给我错误,也不允许我更改状态
var myapp=angular.module('angularProject', ['ui.bootstrap','ui.router','angularProject.filters', 'angularProject.services', 'angularProject.directives', 'angularProject.controllers'])
myapp.config(['$routeProvider', '$stateProvider',function($routeProvider,$stateProvider) {
$routeProvider
.when('/home', {
title: 'Home',
templateUrl: 'views/home.html',
controller: 'homeCtrl'
})
.otherwise('/home');
$stateProvider
// .state('index', {
// url: "",
// views: {
// "viewA": {
// template: "index.viewA"
// },
// "viewB": {
// template: "index.viewB"
// }
// }
// })
.state('route1', {
url: "/route1",
views: {
"viewA": {
template: "route1.viewA"
},
"viewB": {
template: "route1.viewB"
}
}
})
.state('route2', {
url: "/route2",
views: {
"viewA": {
template: "route2.viewA"
},
"viewB": {
template: "route2.viewB"
}
}
})
// .otherwise({redirectTo: '/home'});
}]);
如果您能为$stateProvider与$routeProvider一起使用提供任何帮助,我们将不胜感激。我认为这是不可能的,我认为这不是为配合使用而构建的。
根据,您应该使用
ui路由器
自己的$routeProvider
实现,名为 基本正确:它们不打算一起使用,但是,ui.router
公开了一个$routeProvider
作为其兼容层的一部分,以便在从ngRoute
迁移时使用。$urlRouterProvider
用于管理URL,但主要用于重定向和否则()
(全面)URL.Yah。。你们都是对的..但是$stateProvider用于更改接口的内部视图..Wt关于根url,并指定应使用此控制器…例如,我想这样使用$urlRouterProvider。否则('/home')$urlRouterProvider。当('/home',{title:'home',templateUrl:'views/home.html',controller:'homeCtrl'})我解决了这个问题,伙计们..我想我使用$urlRouterProvider的方式是错误的..非常感谢你的建议..你能使用routeProvider处理身份验证吗,即对未登录的用户隐藏视图?