Skip to content

PageParameters

Represents the parameters used when the definePage load callback runs.

import React from 'react';
import { createRoot } from 'react-dom/client';
import { definePage } from '@veeva/vault';

export default definePage(({ data, element, pageContext: { reload }, sendEvent }) => {
     const root = createRoot(element);

     const onFetchDetailsClick = async () => {
        const details = await sendEvent('fetchDetails', { userName: data.userName });
        console.log(details);
    };

    root.render(
        <div>
            <h1>Hello {data.userName}</h1>
            <button onClick={onFetchDetailsClick}>Click to fetch details by dispatching an event</button>
            <button onClick={() => reload()}>Click to reload the page</button>
        </div>
    );
});

Data

data: Data

Data passed in the PageLoadResponse from Vault Java SDK PageController code.


element: HTMLElement

Root HTML element to append to when writing client code.


pageContext: PageContext

Page context providing the reload() function.


sendEvent: SendEvent

Function to send an event to Vault Java SDK's PageController#onEvent method for handling.