【发布时间】:2019-06-15 07:53:27
【问题描述】:
大家好 我想添加默认布局作为我所有角度组件的主要布局,
例如。主页面布局和登录页面布局。 如果可以做到这一点? 如果没有,处理这个问题的最佳方法是什么?
【问题讨论】:
标签: angular
大家好 我想添加默认布局作为我所有角度组件的主要布局,
例如。主页面布局和登录页面布局。 如果可以做到这一点? 如果没有,处理这个问题的最佳方法是什么?
【问题讨论】:
标签: angular
这可以通过至少两种方式实现:
<router-outlet></router-outlet>,该组件包含默认布局https://angular.io/guide/router
<ng-content></ng-content> angular 2 access ng-content within component 在包含默认布局的组件上使用内容投影
祝你好运!
【讨论】:
您可以通过定义<layout> 组件(将使用<ng-content>)来做到这一点,所有组件都将以这种方式使用它
一些组件模板:
<layout>
<div> Some component content... </div>
</layout>
布局组件模板可以看起来像这样一个非常简单的示例(您需要将其添加到 app.module.ts 中,就像任何其他组件一样):
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'layout',
providers: [],
styleUrls: [ './layout.component.css' ],
templateUrl: './layout.component.html'
})
export class LayoutComponent implements OnInit
{
constructor()
{}
public ngOnInit()
{
}
}
.layout {}
.layout-head {}
.layout-body{}
.layout-footer{}
<div class="layout">
<div class="layout-head"></div>
<div class="layout-body">
<ng-content></ng-content>
</div>
<div class="layout-footer"></div>
</div>
【讨论】: