vue2.x 二次封装element ui 中的el-dialog

这篇具有很好参考价值的文章主要介绍了vue2.x 二次封装element ui 中的el-dialog。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在做后台管理系统的时候,dialog组件是我们使用频率比较高的组件,但是有一些需求现有的组件是不满足的。因此会需要我们做二次封装。
组件本身的属性我们保留,只需要根据需求添加,然后在使用的时候props去拿取使用就可以了。
本次遇到的问题是如何在父组件去控制dialog的展示关闭。之前有尝试过使用watch去监听props的值,是可以做到想到的效果,但是代码稍微有一些冗余。
这次试试新的写法,由于props是单向数据流,所以这里选择使用computed,在父组件改变值的时候,对应的dialog就会相应的改变状态。剩下的就是在dialog关闭的时候,需要通知父组件状态的变化。如下:

<template>
  <div>
    <el-dialog
      :visible.sync="showDialog"
    >
      123
    </el-dialog>
  </div>
</template>
<script>
export default {
  data() {
    return {}
  },
  props: {
    visible: {
      type: Boolean
    }
  },
  computed: {
    showDialog: {
      get() {
        return this.visible
      },
      set(val) {
        console.log(val)
        this.$emit('update:visible', val) // visible 改变的时候通知父组件
      }
    }
  }
}
</script>

然后在父组件使用的时候,直接引入父组件,然后绑定值即可文章来源地址https://www.toymoban.com/news/detail-730023.html

<review-dialog :visible.sync="showReviewDialog" />

import reviewDialog from '../components/reviewDialog'
  components: {
    reviewDialog
  },

  data() {
    return {
      showReviewDialog: false, //展示弹窗
      }
     }
    )

到了这里,关于vue2.x 二次封装element ui 中的el-dialog的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • element ui 表格组件与分页组件的二次封装 【扩展】vue中的render函数

    目录 效果图  组件封装  parseTime函数 debounce 函数 render通用渲染模版 页面使用 【扩展】vue 函数式组件 函数式组件特点: 函数式组件的优点: 【扩展】vue中的render函数 一、初步认识render函数 二、为什么使用render函数 三、render函数的解析 【扩展】添加操作栏显示权限 结构

    2024年02月09日
    浏览(83)
  • vue2 - 详细介绍element UI中在el-select嵌套el-tree树形控件实现下拉选择树型结构数据的效果实例(组件封装)

    在项目上常用使用到 el-select 和 el-tree 组合实现,记录下两者结合的实现过程。(代码以及注释清晰明了,代码直接使用即可) 要求根据项目接口提供的数据,el-tree 里的数据是一次性返回来的,点击最后一层级时,请求接口,在点击层级下方追加数据追加的数据要显示勾

    2024年04月15日
    浏览(67)
  • element ui el-table进行二次封装

    在做项目的时候特别是后台管理的时候table难免用的多,所有根据vue框架对table进行二次封装 好处那就是可以省很多代码,而且用起来也方便。非常的奈斯 封装的内容 组件内的按钮以及复选框分页都是通过变量来控制。 组件内部也是写了方法通过子传父使父组件更好的去使

    2024年02月12日
    浏览(47)
  • element ui多选下拉组件(el-select)tag数量过多处理解决办法(二次封装)

    如下图所示,当标签选择过多时,会占用过多空间 期待效果:超过n行就自动省略,并可以进行展开收起,下图是实现后的效果图 实现分析: 通过extends继承el-select组件 将select源码的template部分粘贴到封装的组件中,以此来操作展开、收起等需要操作dom的部分 监听selected(已选择

    2024年02月13日
    浏览(50)
  • vue2+element ui封装搜索组件

    组件使用 封装组件:vueSearch 下拉多选组件:selectecho

    2024年02月08日
    浏览(53)
  • vue3 element-plus el-form的二次封装

    form表单的二次封装 vue3 element-plus el-form的二次封装 属性名 类型 默认值 说明 data Array [] 页面展示数据内容 onChange Function false 表单事件 bindProps Object {} 表单属性 formRef Object {} 表单ref ruleForm Object {} 数据

    2024年02月13日
    浏览(74)
  • vue3 基于element plus对el-pagination进行二次封装

    在vue3项目中,如果每个列表页都敲一遍分页方法,显然是不合理的,那么,下面我将基于element plus对el-pagination进行二次封装,使用vue3语法糖格式,废话不多说,开干。

    2024年02月12日
    浏览(48)
  • VUE2+Element-ui+封装Echarts图表

    封装Echarts图表,如下效果图 Home组件代码块,使用的mock.js模拟数据封装 Echarts图表组件 安装所需依赖 cnpm i axios -S 安装axios接口请求 cnpm i mockjs 或 yarn add mockjs 安装mockjs生成模拟随机数据 cnpm i echarts 或 yarn add echarts 安装echarts图表 cnpm i element-ui -S 安装element-ui组件库 安装less c

    2024年02月08日
    浏览(48)
  • 【Vue2+Element ui通用后台】整体布局、数据展示、axios封装

    我们新建 Home 组件来展示右侧的内容 整体布局我们使用layout布局,通过基础的 24 分栏,迅速简便地创建布局。由于左侧占比较小,我们分为 8 和 16 即可 然后每个卡片样式的部分,我们使用 Card 卡片 我们先增加一个个人信息的展示: 然后在App.vue 中给 p 标签去掉默认样式 在

    2024年02月14日
    浏览(32)
  • vue Element ui上传组件el-upload封装

    注释: 1. limit 可上传图片数量 2. lableName 当前组件name,用于一个页面多次使用上传组件,对数据进行区分 3. upload 上传图片发生变化触发,返回已上传图片的信息 4. imgUrl 默认图片

    2024年02月11日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包