Decorators - LWC

The Lightning Web Components programming model has three decorators that add functionality to a property or function.


The ability to create decorators is part of ECMAScript, but these three decorators are unique to Lightning Web Components.

@api - To expose a public property, decorate a field with @api. Public properties define the API for a component. 


Public properties: https://developer.salesforce.com/docs/component-library/documentation/en/lwc/reactivity_public.html


To expose a public method, decorate it with @api. Public methods are part of a component’s API. To communicate down the containment hierarchy, owner and parent components can call JavaScript methods on child components.

Public methods: https://developer.salesforce.com/docs/component-library/documentation/en/lwc/create_javascript_methods.html

@wire - To read Salesforce data, Lightning web components use a reactive wire service. When the wire service provisions data, the component rerenders. Components use @wire in their JavaScript class to specify a wire adapter or an Apex method.

@track- If a field’s value changes, and the field is used in a template or in a getter of a property that’s used in a template, the component rerenders and displays the new value. If a field is assigned an object or an array, the framework observes some changes to the internals of the object or array, such as when you assign a new value.

To tell the framework to observe changes to the properties of an object, decorate the field with @track

Please refer salesforce doc for more details: Decorators

Post a Comment

0 Comments