Vue3编写气泡对话框组件_第1页
Vue3编写气泡对话框组件_第2页
Vue3编写气泡对话框组件_第3页
Vue3编写气泡对话框组件_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第Vue3编写气泡对话框组件Vue3气泡对话框组件,使用TypeScript枚举限定类型,样式用到了TailwindCSS

组件代码

template

div

div:class="{

'w-2.5h-2.5border-gray-300bg-whitetransformabsolute':true,

'border-lborder-trotate-45-top-1.5left-4':placement==='top-start',

'border-lborder-trotate-45-top-1.5inset-x-2/4-translate-x-1.5':placement==='top',

'border-lborder-trotate-45-top-1.5right-4':placement==='top-end',

'border-lborder-t-rotate-45top-4-left-1.5':placement==='left-start',

'border-lborder-t-rotate-45inset-y-2/4-left-1.5-translate-y-1.5':placement==='left',

'border-lborder-t-rotate-45bottom-4-left-1.5':placement==='left-end',

'border-rborder-brotate-45-bottom-1.5left-4':placement==='bottom-start',

'border-rborder-brotate-45-bottom-1.5inset-x-2/4-translate-x-1.5':placement==='bottom',

'border-rborder-brotate-45-bottom-1.5right-4':placement==='bottom-end',

'border-rborder-b-rotate-45top-4-right-1.5':placement==='right-start',

'border-rborder-b-rotate-45inset-y-2/4-right-1.5-translate-y-1.5':placement==='right',

'border-rborder-b-rotate-45bottom-4-right-1.5':placement==='right-end',

}"/div

slot/slot

/div

/template

scriptlang="ts"

import{

defineComponent,

PropType

}from'vue';

enumEnumPlacement{

TopStart="top-start",

Top="top",

TopEnd="top-end",

LeftStart="left-start",

Left="left",

LeftEnd="left-end",

BottomStart="bottom-start",

Bottom="bottom",

BottomEnd="bottom-end",

RightStart="right-start",

Right="right",

RightEnd="right-end"

exportdefaultdefineComponent({

name:'popover-warpper',

props:{

placement:{

type:StringasPropTypeEnumPlacement,

default:'top-start'

}

/script

所有样式均使用TailwindCSS。枚举类型EnumPlacement定义了气泡对话框的箭头位置。组件接收参数placement,并用PropType结合枚举类型限制该参数的值。参数placement可以不传,默认值是top-start,即箭头指向上方,位置在左端。

使用组件

template

PopoverWarpper

div标题/div

div内容内容内容内容/div

div内容内容内容内容/div

/PopoverWarpper

/template

script

import{defineComponent}from'vue';

importPopoverWarpperfrom'@/components/PopoverWarpper.vue';

exportdefaultdefineComponent({

components:{PopoverWarpper}

/s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论