本文方法主要是通过Object.defineProperty()方法监听window值的变化,从而在js文件中能监听到vue文件的点击事件
触发事件的vue组件
login.vue
<template>
<button @click="fn">点击</button>
</template>
<script lang="ts" setup>
function fn() {
window.test1 = "测试";
}
</script>
监听点击事件的js文件
request.js
Object.defineProperty(window, "test1", {
set(val) {
console.log("我在vue文件中点击了按钮",val);
},
});
控制台
"我在vue文件中点击了按钮", 测试