When the event-bound function does not pass a value, the first parameter of the function defaults to $event and the type is "MouseEvent".
Solution: Just pass a default parameter. The sample code is as follows:
<template>
<!-- <div class="title" @click="showDialog">{
{
navTitle }}</div> -->
<div class="title" @click="showDialog(true)">{
{
navTitle }}</div>
</template>
<script lang="ts">
import {
defineComponent, inject, reactive, toRefs, watch } from 'vue'
export default defineComponent({
name: 'InfoModule',
setup () {
const data = reactive({
showTitleDialog: false,
navTitle: ''
})
const showDialog = (val = true) => {
data.showTitleDialog = val
}
return {
showDialog,
...toRefs(data)
}
}
})
</script>