[英]Typescript decorators parameters
我想了解 Typescript 裝飾器的不同參數是什么。
function myDecorator(target) { // do something with 'target'... }
在上面的示例中,我知道 target 表示裝飾器附加到的函數/類,但是裝飾器的其他參數是什么,它們的含義是一個命令,我還想獲得一個官方文檔的鏈接來指定這個。
提前致謝。
裝飾器需要一個參數,它裝飾的目標和更多 arguments 取決於目標的類型,例如
方法裝飾器
方法裝飾器的表達式在運行時將被稱為 function,其中包含以下三個 arguments:
- static 成員的 class 的構造函數 function 或成員實例的 ZA2F2ED4F8EBC2CBBD4C21 的原型
- 成員的姓名。
- 成員的屬性描述符。
您可以在TypeScript 裝飾器上找到所有裝飾器類型的完整列表:
Class 裝飾器
方法裝飾器
訪問器裝飾器
物業裝飾師
參數裝飾器
此外:
如果我們想自定義如何將裝飾器應用於聲明,我們可以編寫一個裝飾器工廠。 裝飾器工廠只是一個 function ,它返回將由裝飾器在運行時調用的表達式。
您可以根據需要創建帶有參數的裝飾器工廠。 它們不受限制或指定。
TypeScript 文檔中的示例。
裝飾師:
function sealed(target) {
// do something with 'target' ...
}
適用於
@sealed x
裝飾廠:
function color(value: string) {
// this is the decorator factory
return function (target) {
// this is the decorator
// do something with 'target' and 'value'...
};
}
應用為
@color('blue') x
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.