Компонент Balloon рендерится с помощью renderToStaticMarkup, поэтому в баллуне не возможно вызывать какие-либо экшены. Есть ли способ как-то по другому отображать компоненты в балуне react-yandex-map, чтобы можно было отображать не статический html, а нормальный react компонент?
const getPointData = (
store: IEshopStore,
cart,
remnants,
SetOpenedStore,
openedStores,
storeClickAction
): IPlacemarkProperties => {
return {
balloonContent: renderToStaticMarkup(
Baloon({
store,
cart,
remnants,
SetOpenedStore,
openedStores,
storeClickAction,
})
),
clusterCaption: `
<div>
<p>${store.name} - ${store.param.street || ''}</p>
</div>
`,
hintContent: store.param.street,
};
};
export const generatePlaceMarks = (
stores: IEshopStore[],
cart,
remnants,
SetOpenedStore,
openedStores,
storeClickAction
): IPlacemark[] => {
return stores.map(store => {
const { storeCategoryType, isJevelStore } = store.param;
const name = getPlacemarkIconName(storeCategoryType, isJevelStore);
return {
type: 'Feature',
id: +store.IStoreId,
storeType: storeCategoryType,
geometry: store.param.location,
properties: getPointData(
store,
cart,
remnants,
SetOpenedStore,
openedStores,
storeClickAction
),
options: {
iconLayout: 'default#image',
iconImageHref: `${path}/static/img/placemark-${name}.svg`,
iconImageSize: isJevelStore ? [42, 42] : [21, 42],
// iconImageOffset: [-15, -44],
},
};
});
};