angular11學習 十八

2022-02-19 06:44:26 字數 3673 閱讀 8424

必須放在src/assets

請使用相對路徑

以前

fg.controls['name']

fg.controls['address'].controls['city']

現在

fg.get('address.city')

fg.get(['address', 'street'])

禁用

fg.controls['name'].disable();

fg.controls['city'].disable(); // 不更新父級

解除 enabled

import from '@angular/forms';

@directive()

export class mydirectivedirective

@hostlistener('input', ['$event.target'])

ngmodelchanges(e)

}

public myform: formgroup;

public str:string;

constructor( private fb: formbuilder) )

});this.myform.valuechanges.subscribe(e => )

}this.str=this.myform.get('firstname').value;

});}

export class mydirectivedirective

@hostlistener('input', ['$event.target'])

ngmodelchanges(e) = this.injector.get(ngcontrol);

control.setvalue(a)

// 更新規則

control.updatevalueandvalidity();

}}新建乙個服務

import  from '@angular/core';

@injectable()

export class helloservice

say(from: string) `);

return true;

}}

元件中直接查詢使用

ngafterviewinit()
告訴我們使用了那個類

import  from '@angular/core';

@injectable()

export class helloservice

say(from: string) `);

return true;

}}進行使用

constructor(private helloservice:helloservice)

ng g  library  my-lib
projects裡面有個my-lib專案資料夾

package.json

"ng-packagr": "^10.0.0",
import  from '../../projects/my-lib/src/lib/my-lib.module'

@ngmodule()

頁面的使用

最終通過跟同事一起分析的解決思路是

主模組應該把 router.event 放在 constructor 

而子模組的東西應該放在生命週期裡面`ngoninit`

如果判斷clickdrag事件

let a=document.queryselector('#aaa');

merge(

fromevent(a,'mousedown').pipe(mapto(1)),

fromevent(a,'mousemove').pipe(mapto(2)),

).pipe(

sample(fromevent(a,'mouseup'))// 促發條件:鬆開滑鼠促發

).subscribe(flag=>else if (flag == 2)

})

hello world

px = 20;

我們發現x=20變數了css變數進行操作

@directive()

export class chcolordirective

changecolor(color: string)

// click 的時候修改顏色

ngonchanges生命週期檢測值發生變化

set 輸入屬性,ngonchanges生命週期掛鉤的替代方法,並在傳遞新值時執行

@input() 

set dev(val: dev)

如果您不能輕鬆地切換到不變的更新模式,則解決陳舊資料呈現問題的一種方法是使用getter即時計算檢視模型資料

export class devcardv5component 

private get skill(): number

}

但是,您仍然不能使用該元件的onpush更改檢測策略。而且,在每個更改檢測週期都將呼叫getter另一種選擇是在ngdocheck生命週期掛鉤中執行計算,它被認為是不得已的方法,因為與getter相似,它在每個變更檢測週期內都會被呼叫

ngdocheck()

angular11原始碼探索七 服務二

提供類的例項,使用類提供者 providers 簡寫令牌和類名一起的快捷寫法 providers productservice 這是我們開發很正常這樣寫的 建立乙個服務 injectable export class testservice 使用 constructor private readon...

Angular學習筆記 Angular生命週期

生命週期函式通俗的講就是元件建立 元件更新 元件銷毀的時候會觸發的一系列的方法。當 angular 使用建構函式新建乙個元件或指令後,就會按下面的順序在特定時刻呼叫這些生命週期鉤子方法。當 angular 使用建構函式新建乙個元件或指令後,就會按下面的順序在特定時刻呼叫這些生命週期鉤子方法 鉤子用途...

WIX 學習 十八

custom action installexecutesequence 和 installuisequence 有什麼區別?它們是整個安裝過程的兩個階段,第乙個階段是installuisequence,而第二個階段是installexecutesequence。為什麼要有兩個階段?由於這個兩個階段...