docs: added a chapter on how to emit an event (#8414)
This commit is contained in:
@@ -0,0 +1,48 @@
|
|||||||
|
export const metadata = {
|
||||||
|
title: `${pageNumber} Emit an Event`,
|
||||||
|
}
|
||||||
|
|
||||||
|
# {metadata.title}
|
||||||
|
|
||||||
|
In this chapter, you'll learn how to emit an event in a workflow.
|
||||||
|
|
||||||
|
## Emit Event Step
|
||||||
|
|
||||||
|
Medusa provides an `emitEventStep` helper step in the `@medusajs/core-flows` package that emits an event.
|
||||||
|
|
||||||
|
When you emit an event, you specify the event's name and data payload to pass with the event.
|
||||||
|
|
||||||
|
For example:
|
||||||
|
|
||||||
|
export const highlights = [
|
||||||
|
["13", "emitEventStep", "Emit an event."],
|
||||||
|
["14", `"custom.created"`, "The name of the event to emit."],
|
||||||
|
["15", "data", "The data payload to pass with the event."]
|
||||||
|
]
|
||||||
|
|
||||||
|
```ts highlights={highlights}
|
||||||
|
import {
|
||||||
|
createWorkflow
|
||||||
|
} from "@medusajs/workflows-sdk"
|
||||||
|
import {
|
||||||
|
emitEventStep
|
||||||
|
} from "@medusajs/core-flows"
|
||||||
|
|
||||||
|
const helloWorldWorkflow = createWorkflow(
|
||||||
|
"hello-world",
|
||||||
|
() => {
|
||||||
|
// ...
|
||||||
|
|
||||||
|
emitEventStep({
|
||||||
|
eventName: "custom.created",
|
||||||
|
data: {
|
||||||
|
id: "123"
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
In this example, you emit the event `custom.created` and pass in the data payload an ID property.
|
||||||
|
|
||||||
|
If you execute the workflow, the emit is emitted and any subscribers listening to the event are executed.
|
||||||
@@ -181,6 +181,10 @@ export const sidebar = sidebarAttachHrefCommonOptions(
|
|||||||
path: "/advanced-development/events-and-subscribers/data-payload",
|
path: "/advanced-development/events-and-subscribers/data-payload",
|
||||||
title: "Events Data Payload",
|
title: "Events Data Payload",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: "/advanced-development/events-and-subscribers/emit-event",
|
||||||
|
title: "Emit an Event",
|
||||||
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user