Общие методы и примеры кода для веб-компонентов Lightning (LWC)

«Сценарии LWC» относятся к сценариям или вариантам использования, связанным с веб-компонентами Lightning (LWC), которые представляют собой платформу, предоставляемую Salesforce для создания приложений на платформе Salesforce. LWC позволяет разработчикам создавать компоненты с использованием современных веб-стандартов, таких как JavaScript, HTML и CSS.

Вот несколько распространенных сценариев или методов, связанных с LWC, а также примеры кода:

  1. Создание простого компонента LWC.
    Компоненты LWC определяются с использованием файлов HTML, JavaScript и CSS. Вот пример простого компонента LWC, отображающего приветственное сообщение:

    HTML-файл (helloWorld.html):

    <template>
     <p>{greeting}</p>
    </template>

    Файл JavaScript (helloWorld.js):

    import { LightningElement } from 'lwc';
    export default class HelloWorld extends LightningElement {
     greeting = 'Hello, World!';
    }

    Этот компонент можно использовать в других компонентах или страницах как .

  2. Передача данных между компонентами LWC.
    Компоненты LWC могут взаимодействовать друг с другом, передавая данные через свойства. Вот пример передачи данных из родительского компонента в дочерний:

    Родительский HTML-файл (parentComponent.html):

    <template>
     <c-child-component message={parentMessage}></c-child-component>
    </template>

    Родительский файл JavaScript (parentComponent.js):

    import { LightningElement } from 'lwc';
    export default class ParentComponent extends LightningElement {
     parentMessage = 'Hello from parent!';
    }

    Дочерний файл JavaScript (childComponent.js):

    import { LightningElement, api } from 'lwc';
    export default class ChildComponent extends LightningElement {
     @api message;
    }

    Дочерний компонент может получить доступ к переданному сообщению через свойство message.

  3. Обработка событий в LWC.
    Компоненты LWC могут запускать и обрабатывать события для взаимодействия с другими компонентами. Вот пример обработки события нажатия кнопки:

    HTML-файл (eventExample.html):

    <template>
     <lightning-button label="Click Me" onclick={handleClick}></lightning-button>
    </template>

    Файл JavaScript (eventExample.js):

    import { LightningElement } from 'lwc';
    export default class EventExample extends LightningElement {
     handleClick() {
       // Handle the button click event
       // ...
     }
    }

    Внутри метода handleClick вы можете выполнить любое действие или запустить пользовательское событие для уведомления других компонентов.

  4. Вызов методов Apex из LWC:
    Компоненты LWC могут вызывать методы Apex на стороне сервера для получения данных или управления ими. Вот пример вызова метода Apex:

    Файл JavaScript (apexExample.js):

    import { LightningElement, wire } from 'lwc';
    import getAccountList from '@salesforce/apex/AccountController.getAccountList';
    export default class ApexExample extends LightningElement {
     @wire(getAccountList)
     accounts;
    }

    В этом примере вызывается метод getAccountList из класса Apex «AccountController», а возвращаемые данные сохраняются в свойстве «accounts».

  5. Стилизация компонентов LWC.
    Компонентам LWC можно стилизовать с помощью CSS. Вот пример применения пользовательских стилей к компоненту:

    HTML-файл (styledComponent.html):

    <template>
     <p class="custom-style">This is a styled component.</p>
    </template>

    CSS-файл (styledComponent.css):

    .custom-style {
     color: red;
     font-size: 16px;
    }

    Класс CSS custom-style применяется к элементу абзаца, в результате чего текст красного цвета с размером шрифта 16 пикселей.