Angular屬性型指令

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

屬性型指令 — 改變元素、組件或其它指令的外觀和行為的指令

屬性性指令的創建步驟如下:

import語句需要從 Angular 的core庫導入的一些符號。

  1. Directive提供@Directive裝飾器功能。

  2. ElementRef注入到指令構造函數中。這樣代碼就可以訪問 DOM 元素了。

  3. Input將數據從綁定表達式傳達到指令中,數據綁定。

  4. HostListener綁定事件到指令中。

@Directive裝飾器指定一個 CSS 屬性選擇器[property],以便從模板中識別出關聯到這個指令的 HTML。

import { Directive, ElementRef, Input,HostListener } from '@angular/core';
@Directive({ selector: '[myHighlight]' })export class HighlightDirective {constructor(el: ElementRef) {}@HostListener('mouseenter') onMouseEnter() {this.el.nativeElement.style.backgroundColor = 'yellow';}
}

Angular 會為每個匹配的元素創建一個指令控制器類的實例,并把 Angular 的ElementRefRenderer注入進構造函數。?ElementRef是一個服務,它賦予我們通過它的nativeElement屬性直接訪問 DOM 元素的能力。Renderer服務允許通過代碼設置元素的樣式。

?

使用屬性型指令

在根模塊中import,declarations指令類,然后在需要的模版元素中添加指令名

<p myHighlight>Highlight me!</p>

?

為指令綁定響應事件

從@angular/core中引入@HostListener到指令中。HTML DOM 事件?去掉on前綴

@HostListener('事件') 函數名() {//表達式
}

和addEventListener()差不多,此時在綁定了該屬性的元素上觸發相應的事件后,就會執行@HostListener中的函數。

?

用@Input向指令傳遞值

可以用一般的各種組件之間的數據傳遞方法。下面是簡單的父組件向子組件傳遞

  • 父組件中設置數據,模版元素綁定用于傳遞數據的變量名
  • 在指令類中 ?@Input(‘別名’) 變量名: 值類型

?

?

轉載于:https://my.oschina.net/u/3412211/blog/895121

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/456511.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/456511.shtml
英文地址,請注明出處:http://en.pswp.cn/news/456511.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

beeline連接hiveserver2報錯:User: root is not allowed to impersonate root

最近在生產中搭建HA機制的集群&#xff0c;碰到不少坑&#xff0c;會在接下來的時間里好好總結下&#xff0c;先說下遇到的一個大坑。我們的需求是&#xff1a;希望通過hive的thrift服務來實現跨語言訪問Hive數據倉庫。但是第一步&#xff0c;你得需要在節點中打通服務器端&…

局域網 兩臺電腦共享 密碼關閉

轉載于:https://www.cnblogs.com/WhiteHorseIsNotHorse/p/6832463.html

MySQL查詢select語句詳解

1.查詢記錄 select*from 表名 [where 條件];eg:select*from students;//查詢 students 表中所有記錄&#xff0c;所有字段的值都顯示出來select field1,field2,...fieldn... from 表名 [where 條件];eg:select id,name,age from students;//查詢 students 表中所有記錄, 只顯示…

SVN使用規范

轉載于:https://www.cnblogs.com/shenxiaolin/p/6296880.html

配置hiveserver2訪問hive

目錄&#xff1a;1、前言2、beeline相關的Server.Thrift配置3、啟動beeline并訪問Hive4、期間遇到的問題和解決方法 目錄&#xff1a; 1、前言 作為數據倉庫的工具&#xff0c;hive提供了兩種ETL運行方式&#xff0c;分別是通過Hive 命令行和beeline客戶端&#xff1b; 命令…

通過rhel7的kvm虛擬機實現3節點Postgres-XL(包括gtm standby)

關于postgres-xl的實驗是在我自己筆記本rhel7.2_x64的環境下&#xff0c;用kvm實現的&#xff0c;總共有6臺虛擬機&#xff1a; 一臺openfiler2.99發布共享存儲&#xff0c;一臺gtm master&#xff0c;一臺gtm slave&#xff0c;三臺gtm_proxy/coordinator/datanode&#xf…

MySQL查詢select實例 【筆記】

use mydb; select * from EMP; select * from DEPT; select DISTINCT JOB from EMP; -- distinct 去除重復項 select MGR from EMP; select MGR as 主管編號 from EMP; -- 輔助查詢&#xff0c;每列信息 起別名 as select EMPNO as 員工編號,JOB as 職位,DEPNO as 部…

C#1

轉載于:https://www.cnblogs.com/qingwengang/p/6327371.html

使用python3連接hiveserver2的方法

前言&#xff1a;1、啟動HiveServer22、在Linux中安裝impyla&#xff08;前提是安裝Python相關的環境、虛擬環境&#xff08;可選&#xff09;&#xff09; 前言&#xff1a; 需求&#xff1a;需要通過windows端的pycharm來操作hive。 于是就搜集資料尋找解決方案。 大概有…

vue2.X的路由

以 / 開頭的嵌套路徑會被當作根路徑。 <router-link> 在vue-router1.X中是以<a v-link""></a>存在的 里面的參數&#xff1a; to&#xff1a;代表跳轉的目的地&#xff0c;渲染成<a href""> 后面目的地有下面幾種表示法 to引導&a…

mysql啟動和關閉外鍵約束的方法(FOREIGN_KEY_CHECKS)

在MySQL中刪除一張表或一條數據的時候&#xff0c;出現 [Err] 1451 -Cannot delete or update a parent row: a foreign key constraint fails (...) 這是因為MySQL中設置了foreign key關聯&#xff0c;造成無法更新或刪除數據。可以通過設置FOREIGN_KEY_CHECKS變量來避免這種…

CentOS下安裝VirtualEnv的教程

文章目錄前言&#xff1a;1、下載安裝virutalenv2、安裝新的Python版本&#xff08;可以直接安裝anaconda&#xff1a;安裝過程可自行查資料&#xff09;3、 VirtualEnv的設置4、Python虛擬環境的作用總結&#xff1a;前言&#xff1a; 在目前的Linux系統中&#xff0c;默認使…

社保(五險一金)的問題

2019獨角獸企業重金招聘Python工程師標準>>> 社保&#xff0c;全稱為社會保險&#xff0c;是一種再分配制度&#xff0c;它的目標是保證物質及勞動力的再生產和社會的穩定。我們平時常說的社保&#xff0c;還有另一個名稱&#xff0c;及“五險一金”。那么社保是哪五…

PKM(個人知識管理)類軟件收集(偶爾更新列表)

evernote(印象筆記) Wiz 有道云 麥庫 leanote GoogleKeep OneNote SimpleNote(wp家的&#xff0c;免費) pocket(稍后讀的軟件&#xff0c;同類的還有Instapaper&#xff0c;國內的收趣) MyBase RaysNote(v友開發) CintaNotes https://jitaku.io 開源 Gitit-Bigger Laverna pape…

MySQL中外鍵的定義、作用、添加和刪除

1 簡介 在實際開發的項目中&#xff0c;一個健壯數據庫中的數據一定有很好的參照完整性。例如學生檔案和成績單兩張表&#xff0c;如果成績單中有張三的成績&#xff0c;學生檔案中張三的檔案卻被刪除了&#xff0c;這樣就會產生垃圾數據或者錯誤數據。為了保證數據的完整性&a…

Hive報錯:Error: FUNCTION 'NUCLEUS_ASCII' already exists. (state=X0Y68,code=30000)

Hive執行schematool -initSchema -dbType derby報錯。 報錯的日志&#xff1a; doupeihuadoupeihua-2104 ~/software/hive/bin $ schematool -initSchema -dbType derbySLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/doupei…

Andorid Scrolling Activity(CoordinatorLayout詳情)

1.new project -> Scrolling Activity 2.Layout xml code activity_scrolling.xml 1 <?xml version"1.0" encoding"utf-8"?>2 <android.support.design.widget.CoordinatorLayout xmlns:android"http://schemas.android.com/apk/res/an…

截取utf8中文字符串

英文直接截取即可。 中文應字節長度會亂碼&#xff0c;應先轉unicode截取。 如下&#xff1a; #-*- coding:utf8 -*- s u截取中文 s.decode(utf8)[0:3].encode(utf8)轉載于:https://www.cnblogs.com/BigFishFly/p/6337183.html

解決:Navicat for mysql 設置外鍵出錯

1 看下是不是外鍵允許為空&#xff0c;不唯一等約束條件不滿足 2 或者外鍵設置刪除時為 restrict 1. 兩個字段的類型或者大小不嚴格匹配。例如&#xff0c;如果一個是int(10)&#xff0c;那么外鍵也必須設置成int(10)&#xff0c;而不是int(11)&#xff0c;也不能是tinyint。另…

Python加鹽加密方法hashlib(md5,sha224,sha1,sha256)

用random.randint隨機數給密碼加,鹽加強密碼的安全性