摘要:如果沒有,請(qǐng)查看學(xué)習(xí)筆記之安裝和使用教程事件綁定準(zhǔn)備工作了解目的在模版的界面上面增加一個(gè)按鈕,然后通過小括號(hào)綁定一個(gè)事件。
簡(jiǎn)介
使用插值表達(dá)式將一個(gè)表達(dá)式的值顯示在模版上
{{productTitle}}
使用方括號(hào)將HTML標(biāo)簽的一個(gè)屬性值綁定到一個(gè)表達(dá)式上
使用小括號(hào)將組件控制器的一個(gè)方法綁定到模版上面的一個(gè)事件的處理器上
注意在開始下面的例子之前,請(qǐng)先確認(rèn)已經(jīng)新建了一個(gè)工程。如果沒有,請(qǐng)查看:Angular2學(xué)習(xí)筆記之Angular CLI 安裝和使用教程
事件綁定準(zhǔn)備工作
了解目的:在模版的界面上面增加一個(gè)按鈕,然后通過小括號(hào)綁定一個(gè)事件。 新建一個(gè) bind 組件,使用命令: ng g c bind
修改 bind.component.html
修改 bind.component.ts
//在 BindComponent 類方法中增加方法體 onClickButton(event: any){ console.log(event); }
修改 app.component.html
圖示:
Dom屬性綁定 例子一插值表達(dá)式 與 屬性綁定 之間的關(guān)系
兩種方式都可以實(shí)現(xiàn),angular 在實(shí)現(xiàn)的邏輯上面是: 在程序加載組件的時(shí)候,會(huì)先將 "插值表達(dá)式" 翻譯為 "屬性綁定"
修改 bind.component.html
修改 bind.component.ts
//增加變量 imgUrl: string = "http://placehold.it/320x280";
圖示:
例子二dom 屬性 與 html 屬性的區(qū)別
HTML元素的 DOM屬性和 HTML 屬性是有部分區(qū)別的,這點(diǎn)需要明確差異。
修改 bind.component.html
修改 bind.component.ts
//增加 event事件 onInputEvent(event: any){ //獲取的是 dom 屬性,即輸入屬性 console.log(event.target.value); //獲取的是 html 屬性,也就是初始化的屬性 console.log(event.target.getAttribute("value")); }
圖示:
總結(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
bind works!
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")); } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/90595.html
摘要:所以,在的世界中,唯一的作用是用來初始化元素和指令的狀態(tài)。當(dāng)進(jìn)行數(shù)據(jù)綁定時(shí),只是在與元素和指令的和事件打交道,而就基本上靠邊站了,只有比較特殊的情況才會(huì)用到他。事件綁定事件名事件綁定分為對(duì)原生事件綁定和自定義事件綁定。 數(shù)據(jù)綁定總體而言有三種類型: {{...}} 插值表達(dá)式綁定 屬性綁定(包括property和attitude 事件綁定 插值表達(dá)式綁定 既可以寫在html結(jié)構(gòu)中,...
摘要:第二種情況控制樣式如果的值為那么樣式就是,否則就是寫在最后對(duì)于的屬性綁定和的屬性綁定是一樣一樣的。對(duì)于文章中所用的代碼是結(jié)合了學(xué)習(xí)筆記之?dāng)?shù)據(jù)綁定上面的例子做的,鏈接地址 簡(jiǎn)介 基本HTML屬性 Css 類綁定 CSS 類綁定,[class] 全部替換的例子 CSS 類綁定,[class.sepcial] 部分替換的例子 CSS 類綁定,[ngClass] 替換多個(gè)的...
摘要:所以如果需要使用生命周期,只要在我們的代碼中寫上鉤子函數(shù)即可,會(huì)找到并調(diào)用像這樣的鉤子方法,有沒有接口無所謂。當(dāng)使用構(gòu)造函數(shù)新建一個(gè)組件或指令后,就會(huì)按下面的順序在特定時(shí)刻調(diào)用這些生命周期鉤子方法用處當(dāng)設(shè)置數(shù)據(jù)綁定輸入屬性發(fā)生變化時(shí)響應(yīng)。 接口和鉤子 在介紹生命周期的相關(guān)概念之前,可以先復(fù)習(xí)一下TypeScript對(duì)于接口的概念。 在這里主要使用的是類接口及其實(shí)現(xiàn): interf...
摘要:具體思路子組件暴露一個(gè)屬性,當(dāng)事件發(fā)生時(shí),子組件利用該屬性向上彈射事件。父組件綁定到這個(gè)事件屬性,并在事件發(fā)生時(shí)作出回應(yīng)。這個(gè)組件子樹之外的組件將無法訪問該服務(wù)或者與它們通訊。父子組件通過各自的構(gòu)造函數(shù)注入該服務(wù)。 通過輸入型綁定把數(shù)據(jù)從父組件傳到子組件 Angular對(duì)于父組件 => 子組件的數(shù)據(jù)通信做法和Vue很相似。 // 父組件html模板 // 子組件接收數(shù)據(jù) i...
摘要:在引起狀態(tài)變化的時(shí)刻,框架自動(dòng)觸發(fā)臟檢查,也可以手動(dòng)執(zhí)行臟檢查,直接操作更新視圖。最后,說了這么多,大家在具體選型時(shí)還是要首先分析自己的需求和現(xiàn)狀,然后再做選擇。 作為一個(gè)軟件開發(fā)者,最大的挑戰(zhàn)就是在不斷涌現(xiàn)的新技術(shù)中進(jìn)行取舍,持續(xù)學(xué)習(xí)是從事這一行業(yè)的必備技能。在這個(gè)領(lǐng)域里,技術(shù)更新最快地又非前端莫屬了。各種框架的出現(xiàn)、版本的更新此起彼伏,呈現(xiàn)出一派欣欣向榮之景。 在項(xiàng)目中必不可少的便...
閱讀 2648·2021-11-24 09:39
閱讀 1648·2021-11-24 09:38
閱讀 629·2021-11-22 14:44
閱讀 1888·2021-11-18 10:02
閱讀 2573·2021-11-18 10:02
閱讀 1158·2021-10-14 09:43
閱讀 4244·2021-09-29 09:35
閱讀 524·2021-07-30 15:30