How to merge event fields on a dynamic page?

I’ve used dynamic pages on my own collections in the past and was able to merge multiple fields into one text element along the lines of:-

$w.onReady(()=>{
	$w('#myDataset').onReady(()=>{
		const thisItem = $w('#myDataset').getCurrentItem();
		$w('#textElement').text = '${thisItem.firstField}/${thisItem.secondField}/${thisItem.thirdField}`;
	});
});

I’m now trying to put together a dynamic page for Events. For fields that I don’t need to merge I’ve simply linked them to the events dataset but for some elements I need to massage the information with Velo code.
I’ve accomplished it in a repeater

    $w("#repeater2").onItemReady( ($item, itemData, index) => {
    $item('#eventTitle').text = '$(itemData.title / $(itemData.locationName)`;
  } );

but how do I do it for an element in a dynamic page for the events collection?

Well it actually turned out to be a bit easier than I’d made it in my own mind.

$w.onReady(function () {
  $w("#eventsDynamicDataset").onReady(() => {
    populateCalculatedFields();
  } );
 
  $w("#eventsDynamicDataset").onCurrentIndexChanged( (index) => {
    populateCalculatedFields();
  } );
} );

function populateCalculatedFields() {
  const currentItem = $w("#eventsDynamicDataset").getCurrentItem();
  $w("#dateLocation").text =    currentItem.scheduleFormatted+' | '+currentItem.locationName;
  console.log(currentItem);


  if ( typeof currentItem.mainImage==='undefined') {
      $w('#eventImage').collapse();
  } else {
      $w('#eventImage').expand();
  }
}

All it needed was an onReady for the dataset and a similar process for onCurrentIndexChanged(). Works for me!