LWC - Как бы я обновил данные с данными о молнии после создания новой записи? - PullRequest
0 голосов
/ 27 июня 2019

Я использую проводной сервис вместе с контроллером apex для первоначального извлечения данных.

Как это: @wire (fetchAccounts)parameters

Я хотел бы иметь возможность просматривать вновь созданную учетную запись в таблице данных как

    <lightning-datatable 
       key-field="id"
       data={parameters.data}
       onrowaction={handleRowAction}
       row-number-offset={rowOffset}
       hide-checkbox-column="true"
       columns={columns}>
    </lightning-datatable>

Не могли бы вы посоветовать мне правильный подход?

1 Ответ

1 голос
/ 28 июня 2019

Для достижения этой цели, документацию можно найти здесь: https://developer.salesforce.com/docs/component-library/documentation/lwc/lwc.apex#data_apex__refresh_cache.

Так это будет выглядеть так:


// add this import statement
import { refreshApex } from '@salesforce/apex';


    @track parameters;
    @track error;

    /** Wired Apex result so it can be refreshed programmatically */
    _wiredResult;

    @wire(fetchAccounts)
    wiredCallback(result) {
        this._wiredResult = result;
        if (result.data) {
            this.parameters = result.data;
            this.error = undefined;
        } else if (result.error) {
            this.error = result.error;
            this.parameters = undefined;
        }
    }

    // in order to refresh your data, execute this function:
    refreshData() {
        return refreshApex(this._wiredResult);
    }

И измените свойHTML to:


<lightning-datatable 
   key-field="id"
   data={parameters}
   onrowaction={handleRowAction}
   row-number-offset={rowOffset}
   hide-checkbox-column="true"
   columns={columns}>
</lightning-datatable>


Если вы хотите прочитать хороший пример для этого, вы можете найти здесь: https://github.com/trailheadapps/lwc-recipes/blob/master/force-app/main/default/lwc/ldsDeleteRecord/ldsDeleteRecord.js

...