2014-02-17 35 views
0

我有一个父状态(parent)UI-路由器前缀,和一个孩子的状态(parent.child嵌套视图模板与父母的网址

$stateProvider 
     .state('parent', { 
      url: '/parent', 
      templateUrl: 'views/parent.html', 
      controller: 'parentController', 
     }) 
     .state('parent.child', { 
      url: '/:id', 
      templateUrl: 'views/child.html', 
      controller: 'childController', 
     }); 

父视图包含嵌套ui-view

即:在views/parent.html

<h1>Child:</h1> 
    <div ui-view></div> 

当我改变孩子的状态,双亲状态的网址是为前缀templateUrl

即:在templateUrl被解析为/parent/views/child.html

这是因为/parent/views/child.html不存在失败。 (该文件存储在/views/child.html

如何配置ui-router不要将父状态的网址前缀到templateUrl

回答

4

这不是一个用户路由器问题。你应该用斜杠预先加载你的模板url,这样它就相对于基础url而不是当前url。

所以:

templateUrl : '/views/child.html' 
+1

哇 - 捂脸!谢谢! –