我正在尝试将$stateProvider
用于我的网址路由。我想如果我使用$stateProvider
,那么我就不需要使用$routeProvider
了。它是否正确?我能够将我的网址路由与$routeProvider
一起使用,但无法让我的网址路由与$stateProvider
一起使用。这是我到目前为止的代码:
var app = angular.module("app",['ui.state']);
app.config(function($urlRouterProvider, $stateProvider, $locationProvider) {
$urlRouterProvider.otherwise("/home")
$stateProvider
.state('home', {
url: "/home",
controller: 'HomeCtrl',
views: {
main: { templateUrl: "views/home/main.html" }
sub: { templateUrl: "views/home/sub.html" }
}
})
.state('products/info', {
url: "/products/info",
controller: 'ProductsCtrl',
views: {
main: { templateUrl: "views/products/main.html" },
sub: { templateUrl: "views/products/info/sub.html" }
}
})
.state('products/reviews', {
url: "/products/reviews",
controller: 'ProductsCtrl',
views: {
sub: { templateUrl: "views/products/reviews/sub.html" }
}
})
在我的“shell”html页面上,我有以下内容:
<div class="main">
<div ui-view="main"></div>
<div ui-view="sub"></div>
</div>
当我访问我的任何网址时,我只看到了shell html页面。我的ui-view
中没有任何内容被加载。我错过了什么?
答案 0 :(得分:2)
此处,您的州类型&#39;产品/评论&#39;这是错误的,应该是&product;评论&#39;
答案 1 :(得分:1)
答案 2 :(得分:1)
依赖名称是'ui.router'而不是'ui.state'