Inhaltsverzeichnis
Erstellen Sie eine Komponente
组件输入
组件输出
Komponenteneingabe
Heim Web-Frontend js-Tutorial Lassen Sie uns darüber sprechen, wie Sie einfache unabhängige Komponenten in Angular erstellen und verwenden

Lassen Sie uns darüber sprechen, wie Sie einfache unabhängige Komponenten in Angular erstellen und verwenden

Mar 29, 2023 pm 06:10 PM
angular.js 独立组件

In diesem Artikel erfahren Sie mehr über die unabhängigen Komponenten in Angular, erfahren, wie Sie einfache unabhängige Komponenten erstellen und wie Sie sie in Angular-Anwendungen verwenden. Ich hoffe, dass er für alle hilfreich ist!

Lassen Sie uns darüber sprechen, wie Sie einfache unabhängige Komponenten in Angular erstellen und verwenden

Wenn Sie Angular lernen, haben Sie vielleicht schon von unabhängigen Komponenten (Component) gehört. Wie der Name schon sagt, handelt es sich bei unabhängigen Komponenten um Komponenten, die unabhängig voneinander verwendet und verwaltet werden können. Sie können in andere Komponenten eingebunden oder von diesen referenziert werden.

Erstellen Sie eine Komponente

Um eine Angular-Komponente zu erstellen, müssen Sie zunächst das Angular-CLI-Tool verwenden, um ein leeres Komponentenskelett zu generieren. Angenommen, wir möchten eine Komponente mit dem Namen hello-world erstellen, können wir den folgenden Befehl ausführen: hello-world 的组件,我们可以运行以下命令:

ng generate component hello-world
Nach dem Login kopieren

这个命令将会自动生成一个 hello-world 文件夹,其中包含了组件所需的所有文件,比如 Component 类、HTML 模板以及样式表。【相关教程推荐:《angular教程》】

现在我们可以编辑 hello-world.component.ts 文件来定义我们的组件类。下面这段代码示例演示了一个最小化的组件定义:

import { Component } from '@angular/core';

@Component({
    selector: 'app-hello-world',
    template: &#39;<p>Hello World!</p>&#39;,
})
export class HelloWorldComponent {
}
Nach dem Login kopieren

在这个组件定义中,我们使用 @Component 装饰器指定了组件的选择器(selector),也就是组件在模板中的标签名。同时,我们还确定了组件的 HTML 模板,它只是显示了一个 “Hello World!” 的段落标签。

接下来,我们可以修改 app.component.html 文件来使用这个新的组件。只需要将 <app-hello-world> 标签添加到该文件的适当位置即可。

<app-hello-world></app-hello-world>
Nach dem Login kopieren

现在打开应用程序,你应该能够看到 "Hello World!" 出现在页面上。

组件输入

当使用组件时,我们通常需要传递一些数据给它,这些数据可以通过组件的输入属性来实现。

要定义一个组件输入属性,请在组件类中定义一个带有 @Input() 装饰器的属性。例如,假设我们要将组件的消息设置为用户提供的值:

import { Component, Input } from &#39;@angular/core&#39;;

@Component({
    selector: &#39;app-hello-world&#39;,
    template: &#39;<p>{{message}}</p>&#39;,
})
export class HelloWorldComponent {
    @Input() message: string;
}
Nach dem Login kopieren

在这个修改后的 HelloWorldComponent 中,我们添加了一个 message 输入属性,并在模板中使用它来显示消息。

现在,在使用此组件时,我们可以将消息作为属性传递给它。例如:

<app-hello-world message="Welcome to my app!"></app-hello-world>
Nach dem Login kopieren

组件输出

与输入属性相似,组件也可以通过输出事件来与其它组件进行通信。要定义一个输出事件,请使用 @Output() 装饰器以及 EventEmitter 类。

例如,假设我们要在组件中创建一个按钮,点击按钮时触发一个事件,我们可以定义如下:

import { Component, Output, EventEmitter } from &#39;@angular/core&#39;;

@Component({
    selector: &#39;app-button-with-click-event&#39;,
    template: &#39;<button (click)="onClick()">Click me</button>&#39;,
})
export class ButtonWithClickEventComponent {
    @Output() buttonClick = new EventEmitter<any>();

    onClick(): void {
        this.buttonClick.emit();
    }
}
Nach dem Login kopieren

在这个组件中,我们创建了一个输出属性 buttonClick,并在 onClick() 方法中触发了该事件。

现在,在使用此组件时,我们只需要监听它的 buttonClick 事件即可:

<app-button-with-click-event (buttonClick)="onButtonClick()"></app-button-with-click-event>
Nach dem Login kopieren

最后,在父组件中实现 onButtonClick()rrreee

Dieser Befehl generiert automatisch einen Ordner hello-world, in dem alle enthalten sind die von der Komponente benötigten Dateien, z. B. Komponentenklassen, HTML-Vorlagen und Stylesheets. [Empfohlene verwandte Tutorials: „Angular-Tutorial

"]

Jetzt können wir Hallo bearbeiten -world.component.ts Datei zum Definieren unserer Komponentenklassen. Das folgende Codebeispiel zeigt eine minimale Komponentendefinition:

rrreee

In dieser Komponentendefinition verwenden wir den Dekorator @Component, um den Selektor (Selektor) der Komponente anzugeben, d. h. die Komponente ist Der Tag-Name in die Vorlage. Gleichzeitig haben wir auch das HTML-Template der Komponente festgelegt, das lediglich einen „Hello World!“-Absatz-Tag anzeigt.

Als nächstes können wir die Datei app.component.html ändern, um diese neue Komponente zu verwenden. Fügen Sie einfach das Tag <app-hello-world> an der entsprechenden Stelle in der Datei hinzu.

rrreee

Öffnen Sie nun die App und Sie sollten „Hello World!“ auf der Seite sehen können.

Komponenteneingabe

Wenn wir eine Komponente verwenden, müssen wir ihr normalerweise einige Daten übergeben, was über das Eingabeattribut der Komponente erreicht werden kann. 🎜🎜Um eine Komponenteneingabeeigenschaft zu definieren, definieren Sie eine Eigenschaft mit dem Dekorator @Input() in der Komponentenklasse. Nehmen wir zum Beispiel an, wir möchten die Nachricht der Komponente auf einen vom Benutzer bereitgestellten Wert festlegen: 🎜rrreee🎜In dieser modifizierten HelloWorldComponent haben wir ein message-Eingabeattribut hinzugefügt. und Verwenden Sie es in Vorlagen, um Nachrichten anzuzeigen. 🎜🎜Wenn wir diese Komponente verwenden, können wir ihr nun Nachrichten als Eigenschaften übergeben. Zum Beispiel: 🎜rrreee

Komponentenausgabe🎜🎜Ähnlich wie Eingabeeigenschaften können Komponenten auch über Ausgabeereignisse mit anderen Komponenten kommunizieren. Um ein Ausgabeereignis zu definieren, verwenden Sie den Dekorator @Output() und die Klasse EventEmitter. 🎜🎜Angenommen, wir möchten eine Schaltfläche in einer Komponente erstellen und ein Ereignis auslösen, wenn auf die Schaltfläche geklickt wird. Wir können es wie folgt definieren: 🎜rrreee🎜In dieser Komponente erstellen wir ein Ausgabeattribut buttonClickcode> und dieses Ereignis wird in der Methode <code>onClick() ausgelöst. 🎜🎜Wenn wir diese Komponente verwenden, müssen wir nur noch auf ihr buttonClick-Ereignis hören: 🎜rrreee🎜Abschließend implementieren wir die Methode onButtonClick() in der übergeordneten Komponente Es kann auf dieses Ereignis reagieren. 🎜🎜In diesem Blogbeitrag haben wir uns eingehend mit dem Konzept der eigenständigen Angular-Komponenten und deren Erstellung und Verwendung befasst. Wir haben zunächst vorgestellt, was unabhängige Komponenten sind und warum wir unabhängige Angular-Komponenten verwenden. 🎜🎜Wir untersuchen weiter, wie Angular CLI uns dabei hilft, auf einfache Weise neue eigenständige Komponenten zu erstellen, und besprechen, wie wir Eingaben, Ausgaben und Ereignisse nutzen können, um Komponenten flexibler und vielseitiger zu machen. 🎜🎜Abschließend betonen wir die Bedeutung des modularen Programmieransatzes in unabhängigen Angular-Komponenten. Durch die Aufteilung der Anwendung in kleine, unabhängige Komponenten können wir die Codebasis besser verwalten und einen besser lesbaren und wartbaren Code erzielen. 🎜🎜Mit den Codebeispielen in den Kapiteln können wir mit dem Aufbau unserer eigenen unabhängigen Komponenten beginnen und unseren Anwendungen mehr Funktionalität und Wiederverwendbarkeit hinzufügen. 🎜🎜Weitere Kenntnisse zum Thema Programmierung finden Sie unter: 🎜Einführung in die Programmierung🎜! ! 🎜

Das obige ist der detaillierte Inhalt vonLassen Sie uns darüber sprechen, wie Sie einfache unabhängige Komponenten in Angular erstellen und verwenden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Angular Learning spricht über eigenständige Komponenten (Standalone Component) Angular Learning spricht über eigenständige Komponenten (Standalone Component) Dec 19, 2022 pm 07:24 PM

Dieser Artikel wird Sie dabei unterstützen, Angular weiter zu lernen und die eigenständige Komponente (Standalone Component) in Angular kurz zu verstehen. Ich hoffe, er wird Ihnen hilfreich sein!

Detaillierte Erläuterung des Angular Learning State Managers NgRx Detaillierte Erläuterung des Angular Learning State Managers NgRx May 25, 2022 am 11:01 AM

Dieser Artikel vermittelt Ihnen ein detailliertes Verständnis des Angular-Statusmanagers NgRx und stellt Ihnen die Verwendung von NgRx vor. Ich hoffe, er wird Ihnen hilfreich sein!

Eine kurze Analyse unabhängiger Komponenten in Angular und deren Verwendung Eine kurze Analyse unabhängiger Komponenten in Angular und deren Verwendung Jun 23, 2022 pm 03:49 PM

Dieser Artikel führt Sie durch die unabhängigen Komponenten in Angular, wie Sie eine unabhängige Komponente in Angular erstellen und wie Sie vorhandene Module in die unabhängige Komponente importieren. Ich hoffe, er wird Ihnen hilfreich sein!

Was soll ich tun, wenn das Projekt zu groß ist? Wie teilt man Angular-Projekte sinnvoll auf? Was soll ich tun, wenn das Projekt zu groß ist? Wie teilt man Angular-Projekte sinnvoll auf? Jul 26, 2022 pm 07:18 PM

Das Angular-Projekt ist zu groß. Wie kann man es sinnvoll aufteilen? Der folgende Artikel zeigt Ihnen, wie Sie Angular-Projekte sinnvoll aufteilen. Ich hoffe, er ist hilfreich für Sie!

Lassen Sie uns darüber sprechen, wie Sie das Angular-DateTime-Picker-Format anpassen Lassen Sie uns darüber sprechen, wie Sie das Angular-DateTime-Picker-Format anpassen Sep 08, 2022 pm 08:29 PM

Wie kann ich das Angular-DateTime-Picker-Format anpassen? Im folgenden Artikel geht es um die Anpassung des Formats. Ich hoffe, er ist für alle hilfreich!

Eine Schritt-für-Schritt-Anleitung zum Verständnis der Abhängigkeitsinjektion in Angular Eine Schritt-für-Schritt-Anleitung zum Verständnis der Abhängigkeitsinjektion in Angular Dec 02, 2022 pm 09:14 PM

Dieser Artikel führt Sie durch die Abhängigkeitsinjektion, stellt die durch die Abhängigkeitsinjektion gelösten Probleme und ihre native Schreibmethode vor und spricht über das Abhängigkeitsinjektions-Framework von Angular. Ich hoffe, es wird Ihnen hilfreich sein!

Angulars :host-, :host-context- und ::ng-deep-Selektoren Angulars :host-, :host-context- und ::ng-deep-Selektoren May 31, 2022 am 11:08 AM

Dieser Artikel vermittelt Ihnen ein detailliertes Verständnis mehrerer spezieller Selektoren in Angular: host, :host-context, ::ng-deep. Ich hoffe, er wird Ihnen hilfreich sein!

Vertiefte Kenntnisse von NgModule (Modul) in Angular Vertiefte Kenntnisse von NgModule (Modul) in Angular Sep 05, 2022 pm 07:07 PM

Das NgModule-Modul ist ein wichtiger Punkt in Angular, da der Grundbaustein von Angular NgModule ist. Dieser Artikel führt Sie durch das NgModule-Modul in Angular. Ich hoffe, er wird Ihnen hilfreich sein!

See all articles