首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试在angularjs中使用嵌套视图和ui-路由器获得一个空白页。

尝试在angularjs中使用嵌套视图和ui-路由器获得一个空白页。
EN

Stack Overflow用户
提问于 2015-01-31 14:30:00
回答 2查看 315关注 0票数 3

我的圈套

应用/学习/学习.app

代码语言:javascript
复制
 angular.module('meanApp')
.config(function($stateProvider) {
  $stateProvider
  .state('learning',{
    templateUrl: 'app/learning/learning.html',
    url: '/learning',
    controller: 'LearnCtrl',
    views: {
     'list': {
       templateUrl: 'app/learning/learning.list.html',
       controller: function($scope){  }
     },
     'magic': {
       templateUrl: 'app/learning/learning.magic.html',
       controller: function($scope){  }
     }
   }
 });
});

app/learning/learning.html

代码语言:javascript
复制
<h1>Learning</h1>
<div ui-view="list"></div>
<div ui-view="magic"></div>

app/learning/learning.list.html

代码语言:javascript
复制
<p>A list</p>

app/learning/learning.magic.html

代码语言:javascript
复制
<h2>Magic</h2>

当我导航到/learning时,我得到了一个空白页面,我不知道我做错了什么,所以任何帮助都是非常感谢的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-31 16:54:35

当存在嵌套ui-view时,不应该在状态内加载基本模板,请在views中定义基本模板。

路由码

代码语言:javascript
复制
 angular.module('meanApp')
.config(function($stateProvider) {
  $stateProvider
  .state('learning',{
    url: '/learning',
    views: {
     '': {
       templateUrl: 'app/learning/learning.html',
       controller: 'LearnCtrl'
     },
     'list@learning': { //you missed state name here
       templateUrl: 'app/learning/learning.list.html',
       controller: function($scope){  }
     },
     'magic@learning': { //you missed state name here
       templateUrl: 'app/learning/learning.magic.html',
       controller: function($scope){  }
     }
   }
 });
});

这能帮到你谢谢。

票数 2
EN

Stack Overflow用户

发布于 2015-01-31 17:54:14

问题是,我试图在状态中加载基本模板,而我忽略了Pankaj所说的状态名称,所以解决方案是.

代码语言:javascript
复制
angular.module('meanApp')
.config(function($stateProvider) {
 $stateProvider
 .state('learning',{
   url: '/learning',
   views: {
     '': {
     templateUrl: 'app/learning/learning.html',
     controller: 'LearnCtrl'
    },
    'list@learning': { //you missed state name here
     templateUrl: 'app/learning/learning.list.html',
     controller: function($scope){  }
    },
    'magic@learning': { //you missed state name here
     templateUrl: 'app/learning/learning.magic.html',
     controller: function($scope){  }
    }
  }
 });
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28252730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档