Lightning Interview Q&A

Salesforce Lightning and LWC Interview Questions



1.How to call a controller method in javascript?


var action=component.get(“methodname”)


2.What is the use of do init method?


It will be loaded on loading of lightning applicationIt  is pretty much similar to constructor.



3.What is the use of attribute?


Attribute is like a variable. If you want to store the datathen we should go with attribute.


4.What is bounded expression?


We will able to get the new value. syntax: {!v.attribute name}



5.What is unbounded expression?


we will not able to get the new value. syntax:{#v.attributename}


6.What is the use of AuraEnabled annotation?


if you want to access the data in the lightning applicationthen we should write AuraEnabled annotation->we will not able to access the data in lightning application without auraEnabled



7.What is the use of global action in the controller?


$A.enqueueAction(action)It’s used to execute the server side logic



8.Can we write void method in lightning?


No



9.How to get the response from callback?


reponse.getReturnValue()


10.How to  get the state in controller?


response.getState()



11.Why helper method is a best practice in lightning?


It’s used for re usability.



12.What is reusability in lightning?


We will able to access the value from one method to other method.

method1:


function(component){var name=’sfdcscenarios’;this.method2(name);

},


method2:


function(name){//reusabilityconsole.log(‘name from method1 is’+name);}


13.Does it happens in the controller?


No. It will happens in the helper.



14.what framework lightning will follow?


aura framework.



15.How many tags we have in lightning?


ui tagsLightning tags.



16.What is exends=”force:slds”?


It will acquire the properties of lightning design system?


17.What happens if you don’t put exends=”force:slds”  in lightning application?


It will look like normal html file.



18.What is v in attribute?


It’s a value provider. If you want to access the value from the attribute then we willuse {!v.attrname} or{#v.attributename}



19.When we should go with unbounded expression?


If you are simply dealing with read operation then we should go withunbounded expression


20. Does reusability is possible in  controller?


No



21.What is Lightning component bundle?



component controller helper design svg Documentation style renderer.



22.What is renderer?


If you want to override the standard rendering mechanism in salesforce lightningthen we should go with renderer.



23.What are the events in salesforce lightning?


1.component event

2.application event

3. system events


24..Which interface should you use if you want to get the id of the record from the record Detail page?



force:hasRecordId


25. can we call one component to another component?


Yes,we can call.



26.how to call lightning component in visual force page?



<aura:application access=”GLOBAL” extends=”ltng:outApp”>

    <aura:dependency resource=”c:FlipCard”/>

</aura:application>

*Add the <apex:includeLightning /> component to your Visualforce page.

*Reference a Lightning app that declares your component dependencies with $Lightning.use().

*Write a function that creates the component on the Visualforce page with $Lightning.createComponent().


27.how to pass the parameters in controller?



action.setParams


28.How to  Navigate From One Lightning Component to Another Lightning Component?



“e.force:navigateToComponent”


29. How to go from one lightning page to another lightning page through a click?



 var urlEvent = $A.get(“e.force:navigateToURL”);


30.Best practices for lightning?



1.Do not put so many console logs.

2.Make the use of Salesforce lightning design system for consistent ui design.

3.Make the use of Lightning data services to avoid server calls for Dml operations.2.

4.Use unbounded expressions if the data across components are not required to be in synch.

5.Before you decide to use a third-party library in a Lightning component, you should reevaluate if you really need that library. DOM manipulation libraries (like jQuery) and UI libraries (like Bootstrap or jQuery UI) in particular may no longer be needed when working with the Lightning Component Framework.

6.When possible, use the (sprite-based) Lightning Design System icons (using <lightning:icon> and <lightning:buttonIcon>) instead of custom icons.

7.Salesforce is slower for users who have debug mode enabled. So, do not enable in Production.

8.When appropriate consider passing the data in different components(using attributes,events or methods) rather than retrieving the same data in different components.

9.When making a call to the server limit the columns and rows of the result set. Only select the columns you need.

10.Set a limit on the query and provide paging mechanisum if needed. Don’t return huge number of rows at once.

11.Consider combining several requests(actions) in a single composite request.

Cache the data when possible.

12.Caching the data at the client side can significantly reduce the number of server round trips and improve the performance tips. A storable action is a server action whose response is stored in the in the client cache so that subsequent requests for the same server method with the same set of arguments can be accessed from that cache.

13.Try to limit number of event handlers in your Lightning component. As you can guess, multiple event handler means your component would be busy in listening event changes resulting in performance overload.

14.Always try to use a component event instead of an application event, if possible. Component events can only be handled by components above them in the containment hierarchy so their usage is more localized to the components that need to know about them. Application events are best used for something that should be handled at the application level, such as navigating to a specific record. Application events allow communication between components that are in separate parts of the application and have no direct containment relationship.

15.Use helper methods.

16.To improve runtime performance, set @AuraEnabled(cacheable=true) to cache the method results on the client. To set cacheable=true, a method must only get data. It can’t mutate data.


30. Where we can use Lightning Components?



We can use Lightning Components in the following places:

1.Drag-and-drop Components in the Lightning App Builder and Community Builder.

2.Add Lightning Components to Lightning Pages.

3.Add Lightning Components to Lightning Experience Record Pages.

4.Launch a Lightning Component as a Quick Action.

5.Override Standard Actions with Lightning Components.

6.Create Stand-Alone Apps.


31. Which interface should you use if you want your component to be available for all pages?



You can use the flexipage:availableForAllPageTypes interface.


32. Which interface should you use if you want to override a standard action?



You will need to use the Lightning:actionOverride interface.


33.Which interface should you use if you want your component to be available only on the record home page?



You will need to use the flexipage:availableForRecordHome interface.


34.Which interface should you use if you want your component to be used a tab?



You will need to use the force:appHostable interface.


35.Which interface should you use if you want your component to be used a quick action?



You will need to use the force:lightningQuickAction interface.


36.How can you call the controller method based on a component load?



“<aura:handler  name=”init” value=”{!this}” action=”{!c.doInitialization}”/


37. What are component events?



Component events are events which are fired by child components and handled by the parent component. We can make use of this event when we need to pass a value from a child component to parent component.


38. What are application events?



Application events can be fired from any component and can be handled by any component. They do not require any kind of relationship between the components, but these components must be a part of a single application.


39. What is force:recordData, and what are its advantages?



force:recordData is a standard controller of a Lightning Component. We can perform an operation such as creating a record, editing a record,deleting a record using force:recordData. If we are using force:recordData, it identifies and eliminates the duplicate request going to the server if they are requesting for the same record data (which in turn improves performance).


40.What are the phases in component events propagation?


There are two phases in component event propagation.

1.Bubble Phase

2.Capture Phase


41.  What are the phases in application events propagation?


1.Bubble Phase

2.Capture Phase

3.Default Phase


42.How do the bubble phase and the capture phase propagate?


Bubble phase: propagates from Bottom to Top.

Capture phase: propagates from Top to Bottom.


43.What is Aura:method in Salesforce Lightning component?


we can directly call a child component controller method from the parent component controller method using Aura:method. This method is used to pass value from parent component controller to the child component controller.


44.What is Lightning:overlayLibrary in Salesforce Lightning component?


To create a modal box we use Lightning:overlayLibrary. To use Lightning:overlayLibrary in component we need to include tag <lightning:overlayLibrary aura:id=”overlayLib”/> in component, here aura:id is unique local id. Modal has header,body and footer which are customizable.


45. what are the lightning webcomponent bundle?


LWC bundle contains an HTML file, a JavaScript file, and a metadata configuration file and these files are created once we create a Lightning web component.We can also create a .css file for styling purpose and We can also create SVG file for the purpose of displaying icon.


46.What are the types of decorators in lightning web components?


We have 3 Decorators in Lightning Web Components.

1) @api


2) @track


3) @wire


47.  Is there any limit on how many component to have in one Application ?


There is no limit.


48. Is Lightning Components replacing Visualforce ? 


No.


49. What are the advantages of lightning ?


The benefits include an out-of-the-box set of components, event-driven architecture, and a framework optimized for performance.

Out-of-the-Box Component Set -: Comes with an out-of-the-box set of components to kick start building apps. You don’t have to spend your time optimizing your apps for different devices as the components take care of that for you. Rich component ecosystem-: Create business-ready components and make them available in Salesforce1, Lightning Experience, and Communities.

Performance – :Uses a stateful client and stateless server architecture that relies on JavaScript on the client side to manage UI, It intelligently utilizes your server, browser, devices, and network so you can focus on the logic and interactions of your apps.

Event-driven architecture -: event-driven architecture for better decoupling between components

Faster development – : Empowers teams to work faster with out-of-the-box components that function seamlessly with desktop and mobile devices.

Device-aware and cross browser compatibility – : responsive design,supports the latest in browser technology such as HTML5, CSS3, and touch events.


50. How can we  deploy components to production org ?


we can deploy component by using managed packages, Force.com IDE, Force.com Migration Tool or Change Sets.


51. How we can access Custom Label in Lightning?


Syntax : $A.get(“$Label.namespace.labelName”)


52. How we can use component in the community builder?


Implements “forceCommunity:availableForAllPageTypes” interface on the component.


No comments:

Post a Comment