पाठ 12 / 30
Decorators और Advanced Features
Decorators, class properties, और experimental JavaScript features को transform करें।
Decorators: metadata और class enhancement
Decorators (जैसे @Component) experimental हैं। Babel और SWC को उन्हें metadata या function calls में transform करने के लिए plugins की जरूरत है।
TypeScript decorators को function calls में
@Component एक function call बन जाता है जो class को wrap या modify करता है। @babel/plugin-proposal-decorators की जरूरत है।
// TypeScript + Decorators
@Component({ selector: 'app' })
class AppComponent {}
// Transformed by Babel plugin
var AppComponent = __decorate([
Component({ selector: 'app' })
], AppComponent);Decorator version के लिए plugin options का उपयोग करें
Decorators के कई proposals हैं (legacy vs new)। Plugin config में version: '2023-05' या similar निर्दिष्ट करें यह control करने के लिए कि Babel कौन सा standard follow करता है।