2 |
3 |
4 |
5 |
6 |
7 |
8 | {label}
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/lwc/MultiSelectItem/MultiSelectItem.js:
--------------------------------------------------------------------------------
1 | import { LightningElement,api } from 'lwc';
2 |
3 | export default class MultiSelectItem extends LightningElement {
4 | @api key = '';
5 | @api value = '';
6 | @api label = '';
7 | @api selected = false;
8 |
9 | get listItemStyle() {
10 | var baseStyles = ' slds-media slds-listbox__option_plain slds-media_small slds-listbox__option ';
11 | return this.selected === true ? baseStyles + ' slds-is-selected ' : baseStyles ;
12 | }
13 |
14 | selectHandler(event) {
15 | // Prevents the anchor element from navigating to a URL.
16 | event.preventDefault();
17 | event.stopPropagation();
18 | const selectedEvent = new CustomEvent('selected', { detail: {label:this.label,value:this.value,selected:this.selected,shift:event.shiftKey} });
19 | this.dispatchEvent(selectedEvent);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/lwc/MultiSelectItem/MultiSelectItem.js-meta.xml:
--------------------------------------------------------------------------------
1 |
2 |