问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Vue3命令式组件封装

发布网友 发布时间:2024-10-09 07:29

我来回答

1个回答

热心网友 时间:2024-12-14 12:13

Vue3中,常见的弹窗组件封装方式存在复用性差、代码冗余的问题。本文将介绍一种命令式组件封装的新方法,提高组件的灵活性和管理效率。

命令式组件封装的核心在于,组件内部包含功能逻辑,提供一组接口或方法,通过外部调用来控制组件行为。比如,你可以创建一个名为MessageBox的组件,它接收title、content等参数,隐藏显示状态由组件自身管理,外部只需通过函数调用控制其行为,如设置按钮文本和触发确认或关闭操作。

在封装过程中,首先在MessageBox.vue中,定义组件的样式、过渡效果,并设置isVisible和type变量。接着编写setVisible方法来切换显示状态,给按钮添加点击事件。为了保持状态一致性,创建一个Promise函数,当组件卸载时,根据用户操作决定resolve或reject。

在实际调用时,通过这个函数创建组件实例并挂载,可以根据用户点击事件处理不同的业务逻辑。例如,点击确定按钮时,执行.then中的业务操作,点击取消则执行.catch中的逻辑。

为了扩展组件功能,例如在弹窗内展示表单,可以在MessageBox.vue中添加一个contentView函数,根据传入的type参数动态渲染内容。这样,只需在调用组件时传入不同的type值,即可实现丰富的功能展示。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
不干胶印刷设备多少钱一套 小型不干胶印刷机价格 什么是走水运 水路的特点是什么 疯狂僵尸机游戏怎么玩,植物大战僵尸高清版怎么玩 植物大战僵尸2 植物大战僵尸2戴夫最好的朋友是谁? 怎么下载疯狂的戴夫游戏 游戏下载地址 小红书数据分析工具推荐 三分钟做好一张小红书封面,不同平台超好用的高效率工具你造吗_百度知... 网球王子的剧场版都有哪些啊 网球王子剧场版:英国式庭球城决战DVD情报 【vue自定义组件】多选时间框 国家为什么还不打击炒房者 国家为什么不严厉打击炒房者,一个结婚证只允许买一套房,无结婚证不允... 梦见去世的奶奶和母亲和母亲烧的一幕 为什么越文艺的APP,越难赚钱? 90年代大概就是10年以前吧,赵本山演过一部男办女的贺岁片 ...翘开它吗?再不破坏门和锁的情况下…因为锁不能换,也不想找开锁工... 孵小鸡多久不用翻蛋 ...支付技术转让费20000元。这道会计题怎么做? 20 道 Vue 常见面试题,你会几道?(含答案) KISSWOMENKISS注册过商标吗?还有哪些分类可以注册? KISS LIKE注册过商标吗?还有哪些分类可以注册? KILOGRAM注册过商标吗?还有哪些分类可以注册? KISS.CC注册过商标吗?还有哪些分类可以注册? KISS TO KISS注册过商标吗?还有哪些分类可以注册? KISSPAW注册过商标吗?还有哪些分类可以注册? 正常情况近端小管的重吸收率与肾有关吗 恒大老板许家婆分别是谁 谢惠华简历 油脂类的食物有哪些 ...被大雨冲刷后泛起了沙石,请高手指教怎么处理??? 满面春风的马大爷兴冲冲的走了进来,和每个人都打了招呼,改病句 华为荣耀2,自带的音乐播放器和图库经常不能扫描出下载的文件怎么解决... 非常简单的英语题,进来看看,在线等 2020年8月24日暑假离开学还剩多少天? 送购物券作什么科目 受贿罪不可或缺的证据认定条件是什么 有哪些证据可以构成受贿罪 从浙江杭州到云南丽江,我想自费旅游,一个人(女),怎么样选择路线最好,最... 长度 请看下面具体问题 你不可不知的50个物理知识图书目录 湖州好玩的地方(周边好玩地方推荐) 你眼皮底下的英文:你身上的奇妙英文图书目录 CF手游全国公开赛边框怎么获得 全国公开赛边框获取攻略 少儿科普名人名著书系-星星离我们有多远目录 excel2007 怎样改变柱形图中元素的顺序? ...我觉得人活着不容易,不想孩子来世界上受苦,我的想法对吗_百度... 有些父母认为完全顺应孩子的天性,尤其自由发展,大家觉得这种想法... ...问题你是怎样看待这种想法的?你有过和他们这样的想法吗 ...计算下面题目,并用十六进制的形式回答运算结果,一、35+(-67...