usePublish
usePublish
returns the publish
method from liveProvider
. It is useful when you want to publish a custom event.
Refine uses this hook internally in mutation hooks to publish
events after successful mutations. You can refer to the liveProvider
's Publish Events from Hooks section for more information.
Usageβ
import { usePublish } from "@refinedev/core";
const publish = usePublish();
publish({
channel: "custom-channel-name",
type: "custom-event-name",
payload: {
ids: [1, 2, 3],
"custom-property": "custom-property-value",
},
date: new Date(),
});
This method is used to publish an event on the client side. Beware that publishing events on the client side is not recommended and the best practice is to publish events from the server side. You can refer Publish Events from API to see which events should be published from the server.
Publish Propertiesβ
usePublish
will be passed to the publish method from the liveProvider as a parameter. Following properties of this method can be used when publishing an event.
For more information, refer to the LiveEvent interfaceβ
channel requiredβ
The channel name to publish the event.
type requiredβ
The event name to publish.
payload requiredβ
The payload to publish.
date requiredβ
The date of the event.