Heim > Web-Frontend > js-Tutorial > Detaillierte Erläuterung der Eingabeeigenschaften und Ausgabeeigenschaften von Angular4

Detaillierte Erläuterung der Eingabeeigenschaften und Ausgabeeigenschaften von Angular4

小云云
Freigeben: 2017-12-12 10:51:08
Original
1835 Leute haben es durchsucht

In diesem Artikel werden hauptsächlich die Eingabeattribute und Ausgabeattribute von Angular4 vorgestellt. Er analysiert die Konzepte, Funktionen und zugehörigen Verwendungsfähigkeiten von Angular4-Eingabeattributen und Ausgabeattributen ausführlich in Form von Beispielen. Ich hoffe, es kann allen helfen.

Angular4-Eingabeattribute

Eingabeattribute werden normalerweise verwendet, um Informationen von übergeordneten Komponenten an untergeordnete Komponenten weiterzugeben

Beispiel: Wir übergeben den Lagercode von der übergeordneten Komponente an die untergeordnete Komponente Komponente, hier Wir nennen die untergeordnete Komponente app-order

Deklarieren Sie zunächst den Wert, der von der übergeordneten Komponente übergeben werden muss, in app.order.component.ts

order.component.ts


...
@Input()
stockCode: string
@Input()
amount: string
...
Nach dem Login kopieren


order.component.html


<p>这里是子组件</p>
<p>股票代码为{{stockCode}}</p>
<p>股票总数为{{amount}}</p>
Nach dem Login kopieren


Dann müssen wir den Wert an die untergeordnete Komponente in der übergeordneten Komponente (app.component) übergeben

app.component.ts


...
stock: string
...
Nach dem Login kopieren


app.component.html


<input type="text" placeholder="请输入股票代码" [(ngModel)]="stock">
<app-order [stockCode]="stock" [amount]="100"></app-order>
Nach dem Login kopieren


Hier Wir verwenden die bidirektionale Datenbindung von Angular und binden den vom Benutzer eingegebenen Wert an den Bestand im Controller. Dann wird es an die Unterkomponente übergeben und die Unterkomponente zeigt es nach dem Empfang auf der Seite an.

Angular4-Ausgabeattribute

Ausgabeattribute werden benötigt, wenn eine untergeordnete Komponente Informationen an die übergeordnete Komponente übergeben muss.

Zum Beispiel: Wenn wir den Echtzeitkurs einer Aktie von der Börse erhalten, hoffen wir, dass diese Informationen auch extern eingeholt werden können. Der Einfachheit halber wird der Echtzeit-Aktienkurs hier durch eine Zufallszahl simuliert. Wir nennen die Unterkomponente hier app.price.quote

Verwenden Sie EventEmitter, um Ereignisse von der Unterkomponente auszugeben

price.quote.ts


export class PriceQuoteComponent implements OnInit{
 stockCode: string = 'IBM';
 price: number;
 //使用EventEmitter发射事件
 //泛型是指往外发射的事件是什么类型
 //priceChange为事件名称
 @Output()
 priceChange:EventEmitter<PriceQuote> = new EventEmitter();
 constructor(){
  setInterval(() => {
   let priceQuote = new PriceQuote(this.stockCode, 100*Math.random());
   this.price = priceQuote.lastPrice;
   //发射事件
   this.priceChange.emit(priceQuote);
  })
 }
 ngInit(){
 }
}
//股票信息类
//stockCode为股票代码,lastPrice为股票价格
export class PriceQuote{
 constructor(public stockCode:string,
    public lastPrice:number
 )
}
Nach dem Login kopieren


price.quote.html


<p>
 这里是报价组件
</p>
<p>
 股票代码是{{stockCode}}
</p>
<p>
 股票价格是{{price | number:'2.2-2'}}
</p>
Nach dem Login kopieren


Dann erhalten wir Veranstaltungen in die übergeordnete Komponente

app.component.html


<app-price-quote (priceChange)="priceQuoteHandler($event)"></app-price-quote>
<p>
 这是在报价组件外, 股票代码是{{priceQuote.stokcCode}},
 股票价格是{{priceQuote.lastPrice | number:'2.2-2'}}
</p>
Nach dem Login kopieren


Ereignisbindung und native Ereignisse Die Bindung ist die Das Gleiche gilt, indem Sie den Ereignisnamen in () eingeben.

app.component.ts


export class AppComponent{
 priceQuote:PriceQuote = new PriceQuote('', 0);
 priceQuoteHandler(event:PriceQuote){
  this.priceQuote = event;
 }
}
Nach dem Login kopieren


Der Ereignistyp hier ist der Typ des Ereignisses, das von der übergeben wurde Unterkomponente.

Um es einfach auszudrücken: Die untergeordnete Komponente gibt das Ereignis „priceChange“ über emit aus und übergibt den Wert. Wenn die übergeordnete Komponente die untergeordnete Komponente verwendet, löst sie das Ereignis „priceChange“ aus und empfängt den Wert.

Verwandte Empfehlungen:

Projektvorbereitung und Umgebungserstellungsvorgänge in Angular4

Beispielcode im CSS-Stil für die Anzeige von Inhalten in Angular4

Detaillierte Erläuterung von Beispielen der Router-Klasse in Angular4

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Eingabeeigenschaften und Ausgabeeigenschaften von Angular4. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage