$stateProvider 未按预期加载页面 [英] $stateProvider not loading pages as expected
问题描述
我正在尝试将 $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('家', {网址:/家",控制器:'HomeCtrl',意见:{main: { templateUrl: "views/home/main.html" }sub: { templateUrl: "views/home/sub.html" }}}).state('产品/信息', {网址:/产品/信息",控制器:'产品控制',意见:{main: { templateUrl: "views/products/main.html" },sub: { templateUrl: "views/products/info/sub.html" }}}).state('产品/评论', {网址:/产品/评论",控制器:'产品控制',意见:{sub: { templateUrl: "views/products/reviews/sub.html" }}})
在我的shell"html页面上,我有以下内容:
<div ui-view="main"></div><div ui-view="sub"></div>
当我访问我的任何网址时,我只能看到 shell html 页面.我的 ui-view
中没有加载任何内容.我错过了什么?
这里,你的状态类型'products/reviews'是错误的,应该是'products.reviews'
I am trying to use $stateProvider
for my url routing. I thought that if I use $stateProvider
, then I don't need to use $routeProvider
. Is this correct? I was able to get my url routing to work with $routeProvider
, but am unable to get my url routing to work with $stateProvider
. Here is the code I have so far:
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" }
}
})
On my "shell" html page I have the following:
<div class="main">
<div ui-view="main"></div>
<div ui-view="sub"></div>
</div>
When I visit any of my urls I only see the shell html page. Nothing is being loaded into my ui-view
's. What am I missing?
here,your state type 'products/reviews' is wrong,it should be 'products.reviews'
这篇关于$stateProvider 未按预期加载页面的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!