Hey guys, today in this post we are going to learn about How to creates a custom file uploader component that allows multiple files of JPG, PNG, PDF to be upload in object Uses of ‘lightning-file-upload’ elements in Salesforce Lightning Web Component — LWC .
A lightning-file-upload component provides an easy and integrated way for users to upload multiple files. You can configure the file uploader to accept specific file types, and the file types are filtered in the user’s file browser. To upload files using lightning-file-upload, you can:
- Select a file on your system by clicking the button to open the system’s file browser
- Drag a file from your system into the file selector dropzone
To associate an uploaded file to a record, specify the record-id attribute. Uploaded files are available in Files Home under the Owned by Me filter and on the record’s Attachments related list that’s on the record detail page. If you don’t specify the record-id attribute, the file is private to the uploading user.
Although all file formats that are supported by Salesforce are allowed, you can restrict the file formats using the accept attribute.
The button label is “Upload Files” by default. Use the label attribute to add a descriptive label above the Upload Files button.
This example creates a file uploader that allows multiple PDF and PNG files to be uploaded. To learn more Click Here
Files we used in this post example
lwcFileUpload.html | LWc HTML File | Template HTML file to upload files in Salesforce Lightning Web Component (LWC) |
lwcFileUpload.js | LWC JavaScript File | It’s hold a javascript on uploadFiledAction function to upload filese in Salesforce. |
lwcFileUpload.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. |
Final Output
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 ➡ lwcFileUpload.html
SFDX:Lightning Web Component ➡ New ➡ lwcFileUpload.html
lwcFileUpload.html [Lightning Web Component HTML]
<template>
<lightning-card title="How to upload file & attaching in Lightning Web Component -- LWC" icon-name="custom:custom18" size="small">
<div class="slds-p-around_medium">
<lightning-file-upload
label="Attach File"
name="fileUploader"
accept={acceptedFileItem}
record-id={myRecordId}
onuploadfinished={uploadFiledAction}
multiple>
</lightning-file-upload>
</div>
<br/><br/>
<!--Start RelatedTopics Section-->
<div style="border:1px #ddd solid; padding:10px; background:#eee; margin:40px 0;">
<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>
<br/><br/>
<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>
<div style="display:block; overflow:hidden;">
<div style="width: 50%; float:left; display:inline-block">
<ul style="list-style-type: square; font-size: 16px; margin: 0 0 0 54px; padding: 0;">
<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>
<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>
<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>
<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>
<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>
</ul>
</div>
<div style="width: 50%; float:left; display:inline-block">
<ul style="list-style-type: square; font-size: 16px; margin: 0 0 0 54px; padding: 0;">
<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>
<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>
<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>
<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>
<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>
</ul>
</div>
<div style="clear:both;"></div>
<br/>
<div class="youtubeIcon">
<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>
</div>
</div>
</div>
<!--End RelatedTopics Section-->
</lightning-card>
</template>
Create Lightning Web Component Javascript
Step 2:- Create Lightning Web Component Javascript ➡ lwcFileUpload.js
SFDX:Lightning Web Component ➡ New ➡ lwcFileUpload.js
lwcFileUpload.js [LWC JavaScript File]
import { LightningElement, api } from 'lwc';
import {ShowToastEvent} from 'lightning/platformShowToastEvent';
export default class LwcFileUpload extends LightningElement {
@api
myRecordId;
get acceptedFileItem() {
return ['.pdf', '.png', '.pdf'];
}
uploadFiledAction(event) {
// Get the list of uploaded files
const uploadedFiles = event.detail.files;
// alert("No. of files uploaded : " + uploadedFiles.length);
const toastEvent = new ShowToastEvent({
title:'Files uploaded successfully',
message:'No. of files uploaded ' + uploadedFiles.length,
variant:'success',
})
this.dispatchEvent(toastEvent);
}
}
Create Lightning Web Component Meta XML
Step 3:- Create Lightning Web Component Meta XML ➡ lwcFileUpload.js-meta.xml
SFDX:Lightning Web Component ➡ New >> lwcFileUpload.js-meta.xml
lwcFileUpload.js-meta.xml [LWC Meta Data XML]
<?xml version="1.0" encoding="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>45.0</apiVersion>
<isExposed>true</isExposed>
<targets>
<target>lightning__AppPage</target>
<target>lightning__RecordPage</target>
<target>lightning__HomePage</target>
</targets>
</LightningComponentBundle>
Further post that would you like to learn in Salesforce
How do I upload files in LWC?
Inside openfileUpload method, we use browser FileReader API to generate the data stream. On click of the submit button, handleClick method gets called, and it calls the apex method uploadFile .
Where is attachment object in Salesforce?
An Attachment record in Salesforce is a record of the Attachment Object which is then associated with a parent record. Attachments appear in the Notes & Attachments Related List.
What is CRM content in Salesforce?
Salesforce CRM content feature helps organize, share, search, and manage content within your organization and across key areas of Salesforce.
Related Topics | You May Also Like
Our Free Courses →
👉 Get Free Course →
📌 Salesforce Administrators 📌 Salesforce Lightning Flow Builder 📌 Salesforce Record Trigger Flow Builder |
👉 Get Free Course →
📌 Aura Lightning Framework 📌 Lightning Web Component (LWC) 📌 Rest APIs Integration |