gpt4 book ai didi

javascript - 使用 Angular 4 将页眉/页脚与内容分开

转载 作者:太空宇宙 更新时间:2023-11-04 07:45:00 25 4
gpt4 key购买 nike

我已经开始学习使用 Angular,到目前为止它看起来相当简单。我选择转换我现有的网站主题之一以熟悉该过程,但遇到了有关正确使用的问题。

到目前为止,我的理解是每个页面都是一个组件。我在 app.component.html 中有我的索引内容,然后每个子页面也是一个单独的组件。然而,我想分离 header/footer HTML 并将其包括在内,就像我过去使用 PHP 所做的那样。

我的问题是,header/footer 应该是单独的组件还是应该只是单个 HTML 文件,使用 ng-include 包含?我意识到两者都可以,但无法弄清楚哪个是 Angular 开发人员的传统实现方式。

我正在尝试以下方法,但页眉/页脚组件似乎没有加载。它们在 app.component.html 中运行良好,但在 index.html 中运行不佳。

index.html

<body>
<app-header></app-header>
<app-root></app-root>
<app-footer></app-footer>
</body>

应用程序模块.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';


import { AppComponent } from './app.component';
import { HeaderComponent } from './header/header.component';
import { FooterComponent } from './footer/footer.component';
import { ProductComponent } from './product/product.component';
import { ProductsComponent } from './products/products.component';


@NgModule({
declarations: [
AppComponent,
HeaderComponent,
FooterComponent,
ProductComponent,
ProductsComponent
],
imports: [
BrowserModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }

最佳答案

您应该创建页眉和页脚组件并在 AppComponent 中使用它。

如果您想使用像 translate 这样的国际化工具,或者如果您想在用户登录后更改页眉或页脚,这将很有帮助。

应用结构应该是这样的。

AppComponent
|
|----> HeaderComponent
|----> Router-Outlet ---> Page content should be in the container.
|----> FooterComponent

这就是您需要文件的方式。您不能将 index.html 中的组件作为应用程序的 Angular Bootstrap 而不是其他组件。

关于javascript - 使用 Angular 4 将页眉/页脚与内容分开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48219980/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com