SkillByAIइंटरैक्टिव संस्करण खोलें →

पाठ 26 / 28

डेकोरेटर्स एक नज़र में

TypeScript decorators समझें और जानें कि Angular जैसे frameworks metadata व behaviour जोड़ने के लिए उन्हें कैसे उपयोग करते हैं।

डेकोरेटर क्या है?

डेकोरेटर एक विशेष फ़ंक्शन है, @ से शुरू होने वाला, जो किसी क्लास या सदस्य को व्यवहार या मेटाडेटा जोड़ने के लिए लपेटता है, बिना उसके स्रोत को बदले। Angular इन्हें बहुत उपयोग करता है — @Component, @Injectable, @Input।

एक सरल क्लास डेकोरेटर

डेकोरेटर बस एक फ़ंक्शन है जो क्लास को प्राप्त करता है और उसे देख या बदल सकता है।

function Logged(constructor: Function) {
  console.log(`Class defined: ${constructor.name}`);
}

@Logged
class Greeter {
  greet() {
    return "Hello!";
  }
}
// Output: Class defined: Greeter

tsconfig में सक्षम करें

लीगेसी डेकोरेटर्स के लिए tsconfig.json में "experimentalDecorators": true चाहिए — Angular CLI प्रोजेक्ट यह अपने-आप सेट कर देते हैं।