广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >vue iview封装模态框的方法
  • 890
分享到

vue iview封装模态框的方法

2024-04-02 19:04:59 890人浏览 泡泡鱼
摘要

本文实例为大家分享了Vue iview封装模态框的具体代码,供大家参考,具体内容如下 子组件 <template>   <Modal     :value="is

本文实例为大家分享了Vue iview封装模态框的具体代码,供大家参考,具体内容如下

子组件

<template>
  <Modal
    :value="isshowModal"
    :width="width"
    :title="title"
    @on-visible-change="getFaultModalStatusChange"
  >
    <slot name="content"></slot>
    <div slot="footer">
      <div>
        <Button type="success" :loading="loading" @click="submit">确认</Button>
        <Button class="cancelButton" @click="cancel">取消</Button>
      </div>
    </div>
  </Modal>
</template>
 
<script>
export default {
  name: "ModalBlock",
  props: {
    isShowModal: {
      type: Boolean,
      default: false
    },
    title: {
      type: String
    },
    width: {
      type: Number
    },
    loading: {
      type: Boolean,
      default: false
    }
  },
  methods: {
    cancel: function() {
      this.$emit("modalCancel");
    },
    submit() {
      this.$emit("modalSubmit");
    },
    getFaultModalStatusChange(e) {
      this.$emit("modalStatusChange", e);
    }
  }
};
</script>
 
<style scoped>
</style>

父组件引入

<template>
  <div>
    <Button type="primary" @click="isShowModal = true">Display dialog box</Button>
    <modal-block
      :isShowModal="isShowModal"
      title="搜索框"
      :width="640"
      @modalSubmit="modalSubmit"
      @modalCancel="modalCancel"
      @modalStatusChange="modalStatusChange"
    >
      <div slot="content">
        <Row>
          <Col span="12">
            <div>
              <Input
                v-model="SearchVal"
                icon="iOS-search"
                placeholder="Enter something..."
                style="width: 200px"
                @on-click="handleSearch"
                autocomplete
              />
            </div>
            <div style="height:300px;overflow-y: scroll; margin-top:15px;">
              <RadioGroup v-model="listVal" vertical @on-change="changeSerachVal">
                <Radio :label="item.label" v-for="(item,i) in searchList" :key="i">
                  <span>{{item.value}}</span>
                  <Icon :type="item.icon" />
                </Radio>
              </RadioGroup>
            </div>
          </Col>
          <Col span="12">{{searDtail}}</Col>
        </Row>
      </div>
    </modal-block>
  </div>
</template>
<script>
import ModalBlock from "@/common/ModalItem/ModalSerach";
 
export default {
  name: "ImageUpload",
  components: { ModalBlock },
 
  data() {
    return {
      width: 640,
      SearchVal: "",
      listVal: "",
      searDtail: "",
      isShowModal: false,
 
      searchList: [
        {
          label: "1",
          icon: "loGo-apple",
          value: "111111"
        },
        {
          label: "2",
          icon: "logo-apple",
          value: "111111"
        },
        {
          label: "3",
          icon: "logo-apple",
          value: "111111"
        },
        {
          label: "3",
          icon: "logo-apple",
          value: "111111"
        },
        {
          label: "4",
 
          icon: "logo-apple",
          value: "111111"
        },
        {
          label: "5",
 
          icon: "logo-apple",
          value: "111111"
        }
      ]
    };
  },
  methods: {
    // 模态输入框搜索
    handleSearch() {
      console.log(`modalSubmit11111111`);
    },
    // 点击模态框单选框触发事件
    changeSerachVal(e) {
      if (e == 1) {
        this.searDtail = "1111";
      } else if (e == 2) {
        this.searDtail = "22222222222";
      }
    },
    // 模态框确定事件
    modalSubmit() {
      this.isShowModal = false;
    },
    // 模态框取消事件
 
    modalCancel() {
      this.isShowModal = false;
    },
    // 模态框关闭触发事件
    modalStatusChange(e) {
      if (e === false) {
        this.isShowModal = false;
      }
    }
  }
};
</script>
<style scoped>
</style>

一定要加 @on-visible-change="getFaultModalStatusChange" 这个事件,不然点击按钮的时候会报错

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: vue iview封装模态框的方法

本文链接: https://www.lsjlt.com/news/153521.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue iview封装模态框的方法
    本文实例为大家分享了vue iview封装模态框的具体代码,供大家参考,具体内容如下 子组件 <template>   <Modal     :value="is...
    99+
    2022-11-13
  • Vue dialog模态框的封装方法
    前言 这个是基于vue2的模态框封装,仿照elementUI而写的组件。 效果如图 首先我们需要一个遮罩层 <template>     <div class="...
    99+
    2022-11-13
  • Vue dialog模态框如何封装
    这篇“Vue dialog模态框如何封装”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue dialo...
    99+
    2023-07-02
  • vue定义模态框的方法
    本文实例为大家分享了vue定义模态框的具体代码,供大家参考,具体内容如下 <template> <transition name="slide"> &...
    99+
    2022-11-13
  • react封装Dialog弹框的方法
    本文实例为大家分享了react封装Dialog弹框的具体代码,供大家参考,具体内容如下 Dialog.js import React, { Component, Children ...
    99+
    2022-11-13
  • React封装全屏弹框的方法
    本文实例为大家分享了React封装全屏弹框的具体代码,供大家参考,具体内容如下 web开发过程中,需要用到弹框的地方很多,有时候,产品经理的原型是全屏弹框,而常用的组件库里封装的一般...
    99+
    2022-11-13
  • react封装全局弹框的方法
    本文实例为大家分享了react封装全局弹框的具体代码,供大家参考,具体内容如下 弹框效果图 文件布局 index.js import React, { Component ...
    99+
    2022-11-12
  • JavaScript封装弹框插件的方法
    JavaScript封装弹框插件的具体代码,供大家参考,具体内容如下 知识点1、document.querySelector() 方法 querySelector() 方法返回文档中...
    99+
    2022-11-13
  • vue封装axios的几种方法
    目录基础版第一步:配置axios 第二步:封装请求 第三步:使用 进阶版基础版 第一步:配置axios 首先,创建一个Service.js,这里面存放的时axios的配置以及拦截器...
    99+
    2022-11-12
  • React封装弹出框组件的方法
    本文实例为大家分享了React封装弹出框组件的方法,供大家参考,具体内容如下 效果图 文件目录 alertList.tsx 用于容纳弹出框的容器 import React f...
    99+
    2022-11-13
  • vue日历组件的封装方法
    本文实例为大家分享了vue日历组件的封装代码,供大家参考,具体内容如下 图示 封装的组件的代码如下 <template>   <div class="calend...
    99+
    2022-11-13
  • Vue分页组件的封装方法
    前言 这个是基于vue2的分页封装,仿照elementUI而写的组件。 效果如图 话不多说,直接上代码 <template>   <div class="pagi...
    99+
    2022-11-13
  • vue+echars封装气泡图的方法
    本文实例为大家分享了vue+echars封装气泡图的具体代码,供大家参考,具体内容如下 前端可视化封装气泡图 1. html <template>   <div c...
    99+
    2022-11-13
  • Vue项目中封装axios的方法
    目录一、axios是什么特性基本使用二、为什么要封装三、如何封装设置接口请求前缀设置请求头与超时时间封装请求方法请求拦截器响应拦截器小结参考文献一、axios是什么 axios 是...
    99+
    2022-11-13
  • vue面包屑组件的封装方法
    vue中自己封装面包屑组件,供大家参考,具体内容如下 要实现效果 前言 很多电商类产品都需要实现面包屑导航,用来优化用户体验 一、初级面包屑封装组件 1.封装基础结构组件 Brea...
    99+
    2022-11-12
  • AmazeUI中模态框的实现方法
    这篇文章给大家分享的是有关AmazeUI中模态框的实现方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。AmazeUI的模态框效果如下:完全就如同某些手机浏览器对alert()的处理。其现实代码如下:<!-...
    99+
    2023-06-09
  • Node.js中对通用模块的封装方法
    在Node.js中对模块载入和执行进行了包装,使得模块文件中的变量在一个闭包中,不会污染全局变量,和他人冲突。 前端模块通常是我们开发人员为了避免和他人冲突才把模块代码放置在一个闭包中。 如何封装Node....
    99+
    2022-06-04
    中对 模块 方法
  • vue封装axios请求的方法是什么
    本文小编为大家详细介绍“vue封装axios请求的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue封装axios请求的方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。其实vue封装axio...
    99+
    2023-07-04
  • vue3手动封装弹出框组件message的方法
    本文实例为大家分享了vue3手动封装弹出框组件message的具体代码,供大家参考,具体内容如下 封装组件 <template> <Transition n...
    99+
    2022-11-12
  • VUE项目中封装Echart折线图的方法
    本文实例为大家分享了VUE项目中封装Echart折线图的具体代码,供大家参考,具体内容如下 封装Echart折线图,可显示多条折线 1. 首先在项目中全局引入Echarts,main...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作