怎么在Angular2中綁定數(shù)據(jù)

本篇文章為大家展示了怎么在Angular2中綁定數(shù)據(jù),內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)是一家專業(yè)提供陵水黎族企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、H5高端網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為陵水黎族眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。

使用插值表達(dá)式將一個(gè)表達(dá)式的值顯示在模版上

<img src="{{imgUrl}}" >
<h2>{{productTitle}}</h2>

使用方括號(hào)將HTML標(biāo)簽的一個(gè)屬性值綁定到一個(gè)表達(dá)式上

<img [src]="imgUrl" >

使用小括號(hào)將組件控制器的一個(gè)方法綁定到模版上面的一個(gè)事件的處理器上

<button (click)="onClickButton($event)">按鈕綁定事件</button>

注意

在開始下面的例子之前,請(qǐng)先確認(rèn)已經(jīng)新建了一個(gè)工程。如果沒有,請(qǐng)查看:Angular2學(xué)習(xí)筆記之Angular CLI 安裝和使用教程

事件綁定

怎么在Angular2中綁定數(shù)據(jù)

準(zhǔn)備工作

了解目的:在模版的界面上面增加一個(gè)按鈕,然后通過小括號(hào)綁定一個(gè)事件。

新建一個(gè) bind 組件,使用命令:  ng g c bind

修改 bind.component.html

<!-- 界面增加代碼 -->
<button (click)="onClickButton($event)">按鈕綁定事件</button>

修改 bind.component.ts

//在 BindComponent 類方法中增加方法體
onClickButton(event: any){
 console.log(event);
}

修改 app.component.html

<!-- 增加 app-bind 組件 -->
<app-bind></app-bind>

圖示:

怎么在Angular2中綁定數(shù)據(jù)

Dom屬性綁定

例子一

插值表達(dá)式 與 屬性綁定 之間的關(guān)系

兩種方式都可以實(shí)現(xiàn),angular 在實(shí)現(xiàn)的邏輯上面是: 在程序加載組件的時(shí)候,會(huì)先將 "插值表達(dá)式" 翻譯為 "屬性綁定"

修改 bind.component.html

<!-- 界面增加代碼 -->

<!-- 屬性綁定 -->
<img [src]="imgUrl" >

<!-- 插值表達(dá)式綁定 -->
<img src="{{imgUrl}}" >

修改 bind.component.ts

//增加變量
imgUrl: string = http://placehold.it/320x280;

圖示:

怎么在Angular2中綁定數(shù)據(jù)

例子二

dom 屬性 與 html 屬性的區(qū)別

HTML元素的 DOM屬性和 HTML 屬性是有部分區(qū)別的,這點(diǎn)需要明確差異。

修改 bind.component.html

<!-- 增加代碼 -->
<div>
 <input type="text" value="Tom" (input)="onInputEvent($event)">
</div>

修改 bind.component.ts

//增加 event事件
onInputEvent(event: any){
 //獲取的是 dom 屬性,即輸入屬性
 console.log(event.target.value);

 //獲取的是 html 屬性,也就是初始化的屬性
 console.log(event.target.getAttribute("value"));

}

圖示:

怎么在Angular2中綁定數(shù)據(jù)

總結(jié):

1.少量的 HTML屬性和 DOM屬性之間有這 1 :1 的映射關(guān)系,如 :id
2.有些有 HTML屬性,沒有DOM 屬性, 如:colspan
3.有些有 DOM屬性,沒有HTML 屬性,如:textContent
4.就算名字一樣,DOM屬性和HTML屬性獲取的內(nèi)容可能不一樣
5.模版綁定是通過DOM屬性綁定的,而不是通過HTML屬性
6.HTML屬性指定了初始值,DOM屬性表示當(dāng)前值;DOM屬性的值可以改變,HTML的值不能改變

例子部分完整代碼

bind.component.html

<p>
 bind works!
</p>

<button (click)="onClickButton($event)">按鈕綁定事件</button>

<div>
 <!-- 屬性綁定 -->
 <img [src]="imgUrl" >

 <!-- 插值表達(dá)式綁定 -->
 <img src="{{imgUrl}}" >
</div>

<div>
 <input type="text" value="Tom" (input)="onInputEvent($event)">
</div>

bind.component.ts

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

@Component({
 selector: 'app-bind',
 templateUrl: './bind.component.html',
 styleUrls: ['./bind.component.css']
})
export class BindComponent implements OnInit {

 imgUrl: string = "http://placehold.it/320x280";

 constructor() { }

 ngOnInit() {
 }

 onClickButton(event: any){
  console.log(event);
 }

 onInputEvent(event: any){
  //獲取的是 dom 屬性,即輸入屬性
  console.log(event.target.value);

  //獲取的是 html 屬性,也就是初始化的屬性
  console.log(event.target.getAttribute("value"));
 }
}

上述內(nèi)容就是怎么在Angular2中綁定數(shù)據(jù),你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

當(dāng)前名稱:怎么在Angular2中綁定數(shù)據(jù)
標(biāo)題鏈接:http://muchs.cn/article34/ipgipe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航Google、品牌網(wǎng)站建設(shè)網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名