Skip to main content

Middleware

Optional middleware function may be applied with or without render parameter. Provides access to parameters which will be passed to default or custom render function for their modification.

Examples

Assuming you want to replace domain URL for each conversion unit in detailed view.

Here's what would go in the experience's custom JS section:

window.wyng['_WYNG_ID_'].setCustomRenderer({
section: `ConversionUnitGallery`,
componentId: '[YOUR_COMPONENT_ID]',
middleware: (params) => {
const newUnits = params.conversionUnits.map(u => ({
...u,
click_through_url: u.click_through_url.replace('conversion-unit.domain', 'new.domain'),
}));

return { conversionUnits: newUnits }
}

})

Assuming you want to replace domain URL for each conversion unit and their render.

Here's what would go in the experience's custom JS section:

window.wyng['_WYNG_ID_'].setCustomRenderer({
section: `ConversionUnitGallery`,
componentId: '[YOUR_COMPONENT_ID]',
render: params => `<div>${params.conversionUnits.map(unit => <a href={unit.click_through_url}>{unit.name}</a>)}</div>`,
middleware: (params) => {
const newUnits = params.conversionUnits.map(u => ({
...u,
click_through_url: u.click_through_url.replace('conversion-unit.domain', 'new.domain'),
}));

return { conversionUnits: newUnits }
}

})