Display lightning vertical navigation on-select event handler to retrieve the multiple levels of selected menus with nested submenu items Uses of ‘lightning-tree’ element in Salesforce lightning web component — LWC | How to display selected menus with nested sub-menu value in lwc

1,326 views

Hey guys, today in this post we are going to learn about How to Display lightning vertical navigation on-select event handler to retrieve the multiple levels of selected menus with nested submenu items in Salesforce lightning web component — LWC .

This component inherits styling from trees in the Lightning Design System.

A lightning-tree component displays visualization of a structural hierarchy, such as a sitemap for a website or a role hierarchy in an organization. Items are displayed as hyperlinks and items in the hierarchy can be nested. Items with nested items are also known as branches.

Here we are creating a tree and passing in an array of key-value pairs to the items attribute. To know more, click here.

Files we used in this post example

mulipleLevelsMenuLwc.html LWc HTML File Template HTML file to create muliple levels of selected menus with nested submenu items in lwc
mulipleLevelsMenuLwc.js LWC JavaScript File It’s hold a javascript on click function to display the selected menus with nested submenu using ‘lightning-tree’ element lwc.
mulipleLevelsMenuLwc.js-meta.xml XML Meta File It is used to where this lightning web component file you want to display as like lightning__AppPage, lightning__RecordPage, lightning__HomePage.
mulipleLevelsMenuLwc.css Style CSs It is used for fill the background color in the main element box.

Final Output

multiple levels vertical menus with nested submenu lwc -- w3web.net

 

You can download file directly from github by Click Here.

 
 

Other related post that would you like to learn in Salesforce

  • Find the below steps

Create Lightning Web Component HTML

Step 1:- Create Lightning Web Component HTML ➑ mulipleLevelsMenuLwc.html

 
βœͺ The Big Announcement: -
As per student's demands, I re-opened my eBook of "Salesforce Tutorial" Limited-time huge discount offer Absolutely 50% Off.
I am thinking to give you discount offer occasion of Gandhi Jayanti for a powerful "Salesforce admin course" where you can Understand from Basic Concepts to advanced label in Salesforce.
πŸ‘‰ So Don't MISS it... (Access Right Now)
πŸ‘‰ Get Huge Discount Offer 50%: - Get eBook
 

SFDX:Lightning Web Component ➑ New ➑ mulipleLevelsMenuLwc.html

mulipleLevelsMenuLwc.html [Lightning Web Component HTML]

  1.    <template>
  2.     <lightning-card>
  3.     <div class="slds-p-around--medium">
  4.         <h3 class="slds-text-heading_small slds-m-bottom_medium"> <lightning-icon icon-name="custom:custom19" size="small"></lightning-icon> <strong style="color:#270086;"> Create custom muliple levels of <span style="color:#ff8000">selected menus with nested submenu items </span> in LWC</strong></h3>  
  5.  
  6.         <div class="slds-m-top_medium slds-m-bottom_x-large">           
  7.             <div class="slds-p-around_medium lgc-bg">
  8.                 <lightning-tree items={items} header="w3web.net"></lightning-tree>
  9.             </div>
  10.         </div>
  11.  
  12.     </div>
  13. <br/><br/>
  14.    <!--Start RelatedTopics Section-->
  15. <div style="border:1px #ddd solid; padding:10px; background:#eee; margin:40px 0;">
  16.  
  17.             <p data-aura-rendered-by="435:0"><img src="https://www.w3web.net/wp-content/uploads/2021/05/thumbsUpLike.png" width="25" height="25" style="vertical-align:top; margin-right:10px;" data-aura-rendered-by="436:0"><strong data-aura-rendered-by="437:0"><span style="font-size:16px; font-style:italic; display:inline-block; margin-right:5px;">Don't forget to check out:-</span><a href="https://www.w3web.net/" target="_blank" rel="noopener noreferrer" style="text-decoration:none;" data-aura-rendered-by="440:0">An easy way to learn step-by-step online free Salesforce tutorial, To know more Click  <span style="color:#ff8000; font-size:18px;" data-aura-rendered-by="442:0">Here..</span></a></strong></p>
  18.  
  19.             <br/><br/>
  20.             <p data-aura-rendered-by="435:0"><img src="https://www.w3web.net/wp-content/uploads/2021/07/tickMarkIcon.png" width="25" height="25" style="vertical-align:top; margin-right:10px;" data-aura-rendered-by="436:0"><strong data-aura-rendered-by="437:0"><span style="font-size:17px; font-style:italic; display:inline-block; margin-right:5px; color:rgb(255 128 0);">You May Also Like β†’</span> </strong></p>
  21.             <div style="display:block; overflow:hidden;"> 
  22.                 <div style="width: 50%; float:left; display:inline-block">
  23.                     <ul style="list-style-type: square; font-size: 16px; margin: 0 0 0 54px; padding: 0;"> 
  24.                         <li><a href="https://www.w3web.net/lwc-get-set-lightning-checkbox-value/" target="_blank" rel="noopener noreferrer">How to get selected checkbox value in lwc</a></li>
  25.                         <li><a href="https://www.w3web.net/display-account-related-contacts-in-lwc/" target="_blank" rel="noopener noreferrer">how to display account related contacts based on AccountId in lwc</a></li>
  26.                         <li><a href="https://www.w3web.net/create-lightning-datatable-row-actions-in-lwc/" target="_blank" rel="noopener noreferrer">how to create lightning datatable row actions in lwc</a></li>
  27.                         <li><a href="https://www.w3web.net/if-and-else-condition-in-lwc/" target="_blank" rel="noopener noreferrer">how to use if and else condition in lwc</a></li>
  28.                         <li><a href="https://www.w3web.net/get-selected-radio-button-value-and-checked-default-in-lwc/" target="_blank" rel="noopener noreferrer">how to display selected radio button value in lwc</a></li>
  29.                     </ul>
  30.             </div>
  31.  
  32.             <div style="width: 50%; float:left; display:inline-block">
  33.                     <ul style="list-style-type: square; font-size: 16px; margin: 0 0 0 54px; padding: 0;"> 
  34.                         <li><a href="https://www.w3web.net/display-account-related-contacts-lwc/" target="_blank" rel="noopener noreferrer">display account related contacts based on account name in lwc</a></li>
  35.                         <li><a href="https://www.w3web.net/create-lightning-datatable-row-actions-in-lwc/" target="_blank" rel="noopener noreferrer">how to insert a record of account Using apex class in LWC</a></li>
  36.                         <li><a href="https://www.w3web.net/fetch-picklist-values-dynamic-in-lwc/" target="_blank" rel="noopener noreferrer">how to get picklist values dynamically in lwc</a></li>
  37.                         <li><a href="https://www.w3web.net/edit-save-and-remove-rows-dynamically-in-lightning-component/" target="_blank" rel="noopener noreferrer">how to edit/save row dynamically in lightning component</a></li>
  38.                         <li><a href="https://www.w3web.net/update-parent-object-from-child/" target="_blank" rel="noopener noreferrer">update parent field from child using apex trigger</a></li>
  39.                     </ul>
  40.                 </div>
  41.                <div style="clear:both;"></div> 
  42.                <br/>
  43.                 <div class="youtubeIcon">
  44.                     <a href="https://www.youtube.com/channel/UCW62gTen2zniILj9xE6LmOg" target="_blank" rel="noopener noreferrer"><img src="https://www.w3web.net/wp-content/uploads/2021/11/youtubeIcon.png" width="25" height="25" style="vertical-align:top; margin-right:10px;"/> <strong>TechW3web:-</strong> To know more, Use this <span style="color: #ff8000; font-weight: bold;">Link</span> </a>
  45.                 </div>
  46.     </div>
  47.  
  48. </div>
  49.  
  50.   <!--End RelatedTopics Section-->
  51.  
  52.    </lightning-card> 
  53. </template>
  54.  
  55.     </lightning-card>
  56. </template>

Create Lightning Web Component Javascript

Step 2:- Create Lightning Web Component Javascript ➑ mulipleLevelsMenuLwc.js

SFDX:Lightning Web Component ➑ New ➑ mulipleLevelsMenuLwc.js

mulipleLevelsMenuLwc.js [LWC JavaScript File]

  1.    import { LightningElement } from 'lwc';
  2.  
  3. export default class MulipleLevelsMenuLwc extends LightningElement {
  4.  
  5.     items = [
  6.         {
  7.             label: 'Salesforce Aura Component',
  8.             name: 'Salesforce Aura Component',
  9.             expanded: true,
  10.             items: [
  11.                 {
  12.                     label: 'Aura Component Tutorial',
  13.                     name: 'Aura-Component-Tutorial',
  14.                     expanded: true,
  15.                     items: [
  16.                         {
  17.                             label: 'How to call an external REST API',
  18.                             name: 'REST-API',
  19.                             expanded: true,
  20.                             items: [
  21.                                 {
  22.                                     label: 'How to get the RecordType Name',
  23.                                     name: 'RecordType Name',
  24.                                     expanded: true,
  25.                                     items: [
  26.                                         {
  27.                                             label: 'How to get the RecordType/Id Name of Account',
  28.                                             name: 'RecordType-Account',
  29.                                             expanded: true,
  30.                                             items: [
  31.                                                 {
  32.                                                     label: 'How to create lightning vertical tab',
  33.                                                     name:
  34.                                                         'vertical-tab',
  35.                                                 },
  36.                                                 {
  37.                                                     label: 'Get Picklist Values Dynamically ',
  38.                                                     name:
  39.                                                         'Get-Picklist-Values',
  40.                                                 },
  41.                                             ],
  42.                                         },
  43.                                     ],
  44.                                 },
  45.                                 {
  46.                                     label: 'Retrieve data of Cross-object(Lookup/Master-Detail)',
  47.                                     name: 'Retrieve-data-of-Cross-object',
  48.                                     expanded: true,
  49.                                     items: [
  50.                                         {
  51.                                             label: 'Write a Batch Apex to Update all the Industry',
  52.                                             name: 'Write-a-Batch-Apex',
  53.                                             expanded: true,
  54.                                             items: [
  55.                                                 {
  56.                                                     label: 'Writing a Custom Schedulable Batch Apex',
  57.                                                     name:
  58.                                                         'Custom-Schedulable-Batch',
  59.                                                 },
  60.                                                 {
  61.                                                     label: 'A Collection of Lightning Component Library',
  62.                                                     name:
  63.                                                         'Lightning-Component-Library',
  64.                                                 },
  65.                                             ],
  66.                                         },
  67.                                     ],
  68.                                 },
  69.                             ],
  70.                         },
  71.                         {
  72.                             label: 'How to Avoid Duplicate Name Record',
  73.                             name: 'Avoid-Duplicate-Name',
  74.                             expanded: true,
  75.                             items: [],
  76.                         },
  77.                     ],
  78.                 },
  79.             ],
  80.         },
  81.         {
  82.             label: 'Salesforce LWC',
  83.             name: 'Salesforce LWC',
  84.             expanded: false,
  85.             items: [
  86.                 {
  87.                     label: 'LWC Tutorial',
  88.                     name: 'LWC-Tutorial',
  89.                     expanded: false,
  90.                     items: [
  91.                         {
  92.                             label: 'LWC how to get selected radio button value',
  93.                             name: 'Get-selected-radio-button',
  94.                             expanded: false,
  95.                             items: [
  96.                                 {
  97.                                     label: 'How to creates a custom file uploader component',
  98.                                     name: 'Custom-file-uploader',
  99.                                 },
  100.                             ],
  101.                         },
  102.                         {
  103.                             label: 'How to reset lightning input field values',
  104.                             name: 'Reset-lightning-input-field',
  105.                         },
  106.                     ],
  107.                 },
  108.             ],
  109.         },
  110.     ];
  111.  
  112. }

Create Lightning Web Component Meta XML

Step 3:- Create Lightning Web Component Meta XML ➑ mulipleLevelsMenuLwc.js-meta.xml

SFDX:Lightning Web Component ➑ New >> mulipleLevelsMenuLwc.js-meta.xml

mulipleLevelsMenuLwc.js-meta.xml [LWC Meta Data XML]

  1.    <?xml version="1.0" encoding="UTF-8"?>
  2. <LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
  3.     <apiVersion>45.0</apiVersion>
  4.     <isExposed>true</isExposed>
  5.     <targets>
  6.         <target>lightning__AppPage</target>
  7.         <target>lightning__RecordPage</target>
  8.         <target>lightning__HomePage</target>
  9.       </targets>
  10. </LightningComponentBundle>

Create Lightning Web Component Style CSS

Step 4:- Create Lightning Web Component Style CSS ➑ mulipleLevelsMenuLwc.css

SFDX:Lightning Web Component ➑ New ➑ mulipleLevelsMenuLwc.css

mulipleLevelsMenuLwc.css [Style CSS]

  1.    .lgc-bg {
  2.     background-color: #eee; border:1px #ddd solid; padding:10px;
  3. }
  4.  
  5. .lgc-bg-inverse {
  6.     background-color: rgb(22, 50, 92);
  7. }

Create Lightning Application

Step 5:- Create Lightning Application ➑ mulipleLevelsMenuLwcApp.app

From Developer Console ➑ File ➑ New ➑ Lightning Application

mulipleLevelsMenuLwcApp.app [Lightning Application File]

  1.    <aura:application extends="force:slds">
  2.   <c:mulipleLevelsMenuLwc/>
  3. </aura:application>

multiple levels vertical menus with nested submenu lwc -- w3web.net

Further post that would you like to learn in Salesforce

 

 

FAQ (Frequently Asked Questions)

What is a vertical menu?

Vertical menus allow you to list all of your website's pages along the side of the page. It's makes vertical menus easier for website navigation.

Which is better vertical or horizontal navigation bar?

It is recommended to use vertical navigation when your application requires global navigation that is displayed on the left.

What is a sidebar navigation?

A sidebar provides app-level navigation and quick access to top-level collections of content in your app.

Related Topics | You May Also Like

 
   
 
 

Hi, This is Vijay Kumar behind the admin and founder of w3web.net. I am a senior software developer and working in MNC company from more than 8 years. I am great fan of technology, configuration, customization & development. Apart of this, I love to write about Blogging in spare time, Working on Mobile & Web application development, Salesforce lightning, Salesforce LWC and Salesforce Integration development in full time. [Read full bio] | | The Sitemap where you can find all published post on w3web.net

Leave a Comment