When the user opens a different dashboard in the designer, it assigns a new report object — onAssignedReport lets you capture it.

In Vue.
<script setup lang="ts">
import { Designer, Stimulsoft } from 'stimulsoft-dashboards-js-vuejs/designer'

var report = new Stimulsoft.Report.StiReport();
report.loadFile("Dashboards/Dashboard.mrt");

var options = new Stimulsoft.Designer.StiDesignerOptions();
options.appearance.fullScreenMode = true;

function onAssignedReport(args: Stimulsoft.Designer.AssignedReportArgs) {
    report = args.report;
}
</script>

<template>
    <Designer :report="report" :options="options" @assigned-report="onAssignedReport" />
</template>

How it works. The event fires whenever the designer swaps its dashboard, so your component always holds the current one.