vue3、ts、vue-cli、vue页面。beforeRouteEnter功能调用,并调用vue页面内的变量和函数
<script lang="ts">
import { defineComponent, ComponentPublicInstance } from 'vue';
interface IInstance extends ComponentPublicInstance {
setPathFrom(from: string): void;
}
export default defineComponent({
beforeRouteEnter(to, from, next) {
next((vm) => {
const instance = vm as IInstance;
console.log('instance = ', instance.wineDetailData);
instance.wineDetailData.countInterval = 0; //变量调用
instance.getUserInfo(); // 函数调用
});
},
});
</script>
<script lang="ts" setup>
import { reactive } from 'vue';
interface typeData{
countInterval:number;
}
const wineDetailData = reactive<typeData>({
countInterval: 0
});
const getUserInfo=()=>{
return ''
}
// 暴露变量和方法给beforeRouteEnter调用
defineExpose({ wineDetailData, getUserInfo });
</script>