Contact.vue 1.19 KB
<template>
  <el-dialog :title="props.title" v-model="state.openDialog" width="600px" append-to-body destroy-on-close @close="handleClose(false)">

    <div>
      <el-result title="联系方式" icon="success">
        <template #icon>
          <el-icon size="60"><Phone /></el-icon>
        </template>
        <template #sub-title>
          <div>彭炜剑:+86 13693530427</div>
          <div>王&nbsp;&nbsp;&nbsp;晨:+86 13811685981</div>
        </template>
      </el-result>
    </div>

    <template #footer>
      <span class="dialog-footer">
        <el-button type="primary" @click="handleClose(false)">确定</el-button>
      </span>
    </template>
  </el-dialog>
</template>

<script setup lang="ts">
const emit = defineEmits(["handleClose"]);

let props = defineProps({
  title: {
    default: "",
    type: String
  },
  open: {
    default: false,
    type: Boolean
  },
  openName: {
    type: String,
    required: true,
    default: ""
  },
})

let state = reactive({
  openDialog: false,
})

let handleClose = (isRefresh: boolean) => {
  emit('handleClose', props.openName, false, isRefresh)
}

watchEffect(()=> {
  state.openDialog = props.open
})

</script>

<style scoped>

</style>