2014-12-23 86 views
1

我有一个用于angular.js的ui路由器的问题。 我目前正在使用angular.js和使用ui路由器作为路由器的项目。 现在的问题是,我想有一个嵌套的视图是这样的:Angular.js - ui路由器不注入视图

的意见/设置/ index.html的(也UI路由器一个先前创建的模板)

<div class="settings"> 
    [...] 
    <div class="settings-content" ui-view="content"></div> 
</div> 

app.js

$stateProvider.state('settings', { 
    url: '/settings', 
    views: { 
    main: { 
     templateUrl: 'views/settings/index.html', 
     controller: 'SettingsController' 
    }, 
    "content": { 
     templateUrl: 'views/settings/privacy.html', 
     controller: 'SettingsController' 
    } 
    }, 
    ncyBreadcrumb: { label: 'Settings' } 
}) 

现在我的问题是,该定义content模板不注入ui-view="content"格。主要内容(views/settings/index.html)正在加载。并且在嵌套状态下,也可以使用相同的"string": Object将模板添加到ui-view="content"中。

这是怎么回事? 在此先感谢!

+0

任何错误在JavaScript控制台? – Nick

+0

[Angular UI-Router多个视图]的可能重复(http://stackoverflow.com/questions/22175980/angular-ui-router-multiple-views) – cleftheris

回答

3

您必须使用[email protected]语法,如here所述。

试试这个

$stateProvider.state('settings', { 
    url: '/settings', 
    views: { 
    main: { 
     templateUrl: 'views/settings/index.html', 
     controller: 'SettingsController' 
    }, 
    "[email protected]": { 
     templateUrl: 'views/settings/privacy.html', 
     controller: 'SettingsController' 
    } 
    }, 
    ncyBreadcrumb: { label: 'Settings' } 
})