You need to sign in to do that
Don't have an account?
AD1418
datatable search not working in lwc
Hi Folks,
I am facing issue in lwc datatable search. The search results are not getting displayed. below is the code:-
Apex Controller:
html :-
js file :-
Thanks
I am facing issue in lwc datatable search. The search results are not getting displayed. below is the code:-
Apex Controller:
public with sharing class issueLogController { @AuraEnabled(cacheable=true) public static list<Issue_Log__c> searchLoggedIssues(String searchKey, String sortBy, String sortDirection){ string query = 'select Id, Name, Issue_Description__c, Issue_Priority__c, Resolved__c from Issue_Log__c'; if(searchKey != null && searchKey != ''){ string key = '%' + searchKey + '%'; query += 'where Name LIKE :key'; } if(sortBy != null && sortDirection != null){ query += 'ORDER BY ' + sortBy + ' ' + sortDirection; } return Database.query(query); } }
html :-
<template> <lightning-card title="Logged Issues Search" > <div class="slds-m-around_medium"> <lightning-input type="search" onchange={handleKeyChange} class="slds-m-bottom_small" label="search" value={searchKeyword}> <lightning-datatable key-field="id" data={data} columns={cols} sorted-by={sortedBy} sorted-direction={sortedDirection} onsort={sortColumns} > </lightning-datatable> </lightning-input> </div> </lightning-card> </template>
js file :-
import { LightningElement, api, track, wire } from 'lwc'; import searchLoggedIssues from '@salesforce/apex/issueLogController.searchLoggedIssues'; import {ShowToastEvent} from 'lightning/platformShowToastEvent'; import {refreshApex} from '@salesforce/apex'; const columns = [ {label: 'Issue Log Name', fieldName: 'Name', sortable: true}, {label: 'Issue Description', fieldName: 'Issue_Description__c', sortable: true}, {label: 'Issue Priority', fieldName: 'Issue_Priority__c', sortable: true}, {label: 'Issue Type', fieldName: 'Issue_Type__c', sortable: true}, {label: 'Issue Resolved ?', fieldName: 'Resolved__c', type: 'boolean'} ]; export default class IssueListSearchChildLwC extends LightningElement { @track cols = columns; @track error; @track data; @api sortedBy = 'Name'; @api sortedDirection = 'asc'; @api searchKeyword = ''; @track result; @wire(searchLoggedIssues, { searchKey: '$searchKeyword', sortBy: '$sortedBy', sortDirection: '$sortedDirection' }) getIssues(result){ this.result = result; if(result.data){ this.data = result.data; } else if(result.error){ this.error = result.error; } console.log('test******'); } sortColumns(event){ this.sortedBy = event.detail.fieldName; this.sortedDirection = event.detail.sortDirection; return refreshApex(this.result); } handleKeyChange(event){ this.searchKeyword = event.target.value; return refreshApex(this.result); } }Need some assistance on this. Any help will be much appreciated.
Thanks