【发布时间】:2015-01-20 20:14:55
【问题描述】:
我有一些路线,其中一些视图使用我的 index.html 作为模板。在特定视图(例如登录页面)上,我不想使用 index.html 作为模板。如何用 Angular 做到这一点:
My routes:
.when('/user/:id/update',{
templateUrl: 'views/updateUser.html',
controller: 'updateUserCtrl'
})
.when('/role', {
templateUrl: 'views/role.html',
controller: 'RoleCtrl'
})
.when('/login', {
controller: 'RoleCtrl' //Here I want a page withou template
})
我已经尝试过像这样使用 ui-route:
$stateProvider
.state('contacts', {
abstract: true,
template: '<ui-view/>',
url: '/contacts'
})
.state('contacts.list', {
// loaded into ui-view of parent's template
templateUrl: 'contacts.list.html',
url: '/list'
})
.state('contacts.detail', {
// loaded into ui-view of parent's template
templateUrl: 'contacts.detail.html',
url: '/detail'
})
在这两种情况下,我的页面总是从我的 index.html 继承。
【问题讨论】:
-
您为什么要这样做?路由到页面但不向用户显示任何内容有什么意义?如果你真的需要,你可以只路由到一个空白的 html 模板,但我没有看到 i 中的意义。
-
您是否可能只想在 index.html 中有一个空正文并拥有一个“主”模板,其中包含您当前的所有 html 以及其他路由作为子路由,但
/login有不同的主模板? -
嗨,我的 index.html 几乎有我的页面的模板,但有些页面完全不同,我不想使用 index.html 作为模板,我想要另一个在这些不同的页面上使用。另一种情况是登录页面。我的登录页面只是一个用户注册或点击注册的表单,我没有页眉、页脚、侧边菜单等。
-
嗨@JasonGoemaat 有点像这样。我的 index.html 有我所有的结构,如页眉、菜单、页脚、js 和 css 导入,但在 /login 我只想要一个没有所有这些东西的简单页面,例如一个带有简单表单的空页面
标签: javascript angularjs angularjs-routing angularjs-templates