怎么使用Vue3设计实现一个Model组件


本篇内容主要讲解“怎么使用Vue3设计实现一个Model组件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Vue3设计实现一个Model组件”吧!组件就是把图形、非图形的各种逻辑均抽象为一个统一的概念(组件)来实现开发的模式现在有一个场景,点击新增与编辑都弹框出来进行填写,功能上大同小异,可能只是标题内容或者是显示的主体内容稍微不同这时候就没必要写两个组件,只需要根据传入的参数不同,组件显示不同内容即可这样,下次开发相同界面程序时就可以写更少的代码,意义着更高的开发效率,更少的Bug和更少的程序体积实现一个Modal组件,首先确定需要完成的内容:遮罩层标题内容主体内容确定和取消按钮主体内容需要灵活,所以可以是字符串,也可以是一段html代码特点是它们在当前vue实例之外独立存在,通常挂载于body之上除了通过引入import的形式,我们还可通过API的形式进行组件的调用还可以包括配置全局样式、国际化、与typeScript结合首先看看大致流程:目录结构组件内容实现 API 形式事件处理其他完善Modal组件相关的目录结构├── plugins
│ └── modal
│ ├── Content.tsx // 维护 Modal 的内容,用于 h 函数和 jsx 语法
│ ├── Modal.vue // 基础组件
│ ├── config.ts // 全局默认配置
│ ├── index.ts // 入口
│ ├── locale // 国际化相关
│ │ ├── index.ts
│ │ └── lang
│ │ ├── en-US.ts
│ │ ├── zh-CN.ts
│ │ └── zh-TW.ts
│ └── modal.type.ts // ts类型声明相关因为 Modal 会被app.use(Modal)调用作为一个插件,所以都放在plugins目录下首先实现modal.vue的主体显示内容大致如下最免费云主机域名外层上通过Vue3Teleport内置组件进行包裹,其相当于传送门,将里面的内容传送至body之上并且从DOM结构上来看,把modal该有的内容(遮罩层、标题、内容、底部按钮)都实现了关于主体内容可以看到根据传入content的类型不同,对应显示不同得到内容最常见的则是通过调用字符串和默认插槽的形式通过 API 形式调用Modal组件的时候,content可以使用下面两种h 函数JSX那么组件如何实现API形式调用Modal组件呢?在Vue2中,我们可以借助Vue实例以及Vue.extend的方式获得组件实例,然后挂载到body上虽然Vue3移除了Vue.extend方法,但可以通过createVNode实现在Vue2中,可以通过this的形式调用全局 API而在 Vue3 的setup中已经没有this概念了,需要调用app.config.globalProperties挂载到全局下面再看看看Modal组件内部是如何处理「确定」「取消」事件的,既然是Vue3,当然采用Compositon API形式在上面代码中,可以看得到除了使用传统emit的形式使父组件监听,还可通过_hub属性中添加on-cancel,on-confirm方法实现在API中进行监听下面再来目睹下_hub是如何实现到此,相信大家对“怎么使用Vue3设计实现一个Model组件”有了更深的了解,不妨来实际操作一番吧!这里是百云主机网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

相关推荐: 怎么使用R包ggtreeExtra绘制进化树

这篇“怎么使用R包ggtreeExtra绘制进化树”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用R包ggtreeExtra绘制进化树”文…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 03/27 18:05
Next 03/27 18:05

相关推荐