效果  
 
 封装后的组件  
 < template>  
  < el- dialog v- model= "dialogVisible"  : show- close= "false"  : fullscreen= "fullscreen"  draggable overflow> 
    < template #header= "{ close }" > 
      < div>  
        < span style= "font-weight: bolder" > { {  title0 } } < / span> 
        < el- icon style= "cursor: pointer; float: right"  @click = "close" > < Close  / > < / el- icon> 
        < el- icon style= "cursor: pointer; float: right; margin-right: 8px"  @click = "fullScreenFun" > < FullScreen  / > < / el- icon> 
        < el- icon style= "cursor: pointer; float: right; margin-right: 8px"  @click = "close" > < Minus  / > < / el- icon> 
      < / div> 
    < / template> 
    < slot>  默认内容< / slot> 
    < template #footer> 
      < el- button @click = "dialogVisible = false" > 取消< / el- button> 
      < el- button type= "primary"  @click = "submit" >  确定 < / el- button> 
    < / template> 
  < / el- dialog> 
< / template> 
< script setup lang= "tsx"  name= "assignRoleDialog" > 
import  {  ref }  from "vue" ; 
const  title0 =  ref ( "默认标题" ) ; 
const  dialogVisible =  ref ( false ) ; 
const  fullscreen =  ref ( false ) ; 
const  openDialog =  ( title:  string)  = >  { 
  title0. value =  title; 
  dialogVisible. value =  true ; 
} ; 
const  closeDilog =  ( )  = >  { 
  dialogVisible. value =  false ; 
} ; 
const  fullScreenFun =  ( )  = >  { 
  fullscreen. value =  ! fullscreen. value; 
} ; 
const  emits =  defineEmits ( [ "fun" ] ) ; 
const  submit =  ( )  = >  { 
  emits ( "fun" ) ; 
} ; 
defineExpose ( { 
  openDialog, 
  closeDilog
} ) ; 
< / script> 
  
 页面中使用  
< template>  
	< el- button @click = "openDialogFun" > haaha< / el- button> 
	< FullScreenDialog  ref= "hdialog"  @fun = "dfun" > 
      < el- scrollbar max- height= "800px" > 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < ! --  < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2> 
        < h2> 111111 < / h2>  -- > 
      < / el- scrollbar> 
    < / FullScreenDialog > 
< / template> 
< script lant= ts> 
import  FullScreenDialog  from "@/components/FullScreenDialog/index.vue" ; 
const  hdialog =  ref ( ) ; 
const  openDialogFun =  ( )  = >  { 
  hdialog. value! . openDialog ( "修改用户" ) ; 
} ; 
const  dfun =  ( )  = >  { 
  alert ( "执行业务代码……" ) ; 
  hdialog. value. closeDilog ( ) ; 
} ; 
< / script>