我正在尝试$stateProvider
用于我的 url 路由。我想,如果我使用$stateProvider
,那么我就不需要使用$routeProvider
。这个对吗?我能够让我的 url 路由使用$routeProvider
,但我无法让我的 url 路由使用$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
的 's 中。我错过了什么?