Angular: 在路由之间重用页面骨架
Angular: reuse page skeleton between routes
考虑将网站布局为两个独立的组件,可能是导航栏和主要内容区域。导航栏在页面之间略有不同;它是由一个小字典参数化的单个组件。另一方面,主要内容区域在每个页面上包含一个完全不同的组件。
我想实现一个 "skeleton" 组件并在路由之间重用它:
<div class='container'>
<div class='navbar'>...</div>
<div class='content'>...</div>
</div>
如何将导航栏和内容插入其中?
我考虑过使用辅助路由或子路由,但考虑到这两个组件不应单独发展,这两种方法都感觉非常重量级。如果 Angular 以某种方式支持它们,它们可能应该作为同一路线的一部分实施。
让我们将其视为一些 abc 组件
HTML
<div class='container'>
<ng-content select="[navbar]">...</ng-content>
<ng-content select="[maincontent]">...</ng-content>
</div>
HTML 让我们将其视为将 html 传递给 abc 组件的其他组件。
<abc>
<ng-container navbar> Content for navbar goes here... <ng-container>
<ng-container mainContent> Content for mainContent goes here... <ng-container>
</abc>
考虑将网站布局为两个独立的组件,可能是导航栏和主要内容区域。导航栏在页面之间略有不同;它是由一个小字典参数化的单个组件。另一方面,主要内容区域在每个页面上包含一个完全不同的组件。
我想实现一个 "skeleton" 组件并在路由之间重用它:
<div class='container'>
<div class='navbar'>...</div>
<div class='content'>...</div>
</div>
如何将导航栏和内容插入其中?
我考虑过使用辅助路由或子路由,但考虑到这两个组件不应单独发展,这两种方法都感觉非常重量级。如果 Angular 以某种方式支持它们,它们可能应该作为同一路线的一部分实施。
让我们将其视为一些 abc 组件 HTML
<div class='container'>
<ng-content select="[navbar]">...</ng-content>
<ng-content select="[maincontent]">...</ng-content>
</div>
HTML 让我们将其视为将 html 传递给 abc 组件的其他组件。
<abc>
<ng-container navbar> Content for navbar goes here... <ng-container>
<ng-container mainContent> Content for mainContent goes here... <ng-container>
</abc>