vue实现弹出框内嵌页面展示,添加tab切换展示实时加载

这篇具有很好参考价值的文章主要介绍了vue实现弹出框内嵌页面展示,添加tab切换展示实时加载。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近做业务的时候,发现产品的原型图上有一个弹出框,上面包含了两个窗口要进行切换。
vue 列表弹框,vue.js,javascript,前端

每个窗口都有分页列表展示、搜索、添加和删除,感觉就是两个完整的页面,如果全写在一个页面会很麻烦,还可能会出现一系列的问题,后期改起来比较麻烦,所以我就准备分开来写这个窗口,先写两个页面,最后看能不能嵌入到弹出框里。
这里插入一下vue的页面跳转方法,点击按钮直接跳转到另一个页面,这样可以先调整单个页面的样式和功能。

<el-table-column label="字典类型" align="center" :show-overflow-tooltip="true">
  <template slot-scope="scope">
    <router-link :to="'/system/dict-data/index/' + scope.row.dictId" class="link-type">
      <span>{{ scope.row.dictType }}</span>
    </router-link>
  </template>
</el-table-column>

参数获取:

created() {
    const dictId = this.$route.params && this.$route.params.dictId;
    this.getType(dictId);
    this.getTypeList();
  },

而且这块跳转的页面也是需要配置路由的,要不然页面就会404:

  {
    path: '/system/dict-data',
    component: Layout,
    hidden: true,
    permissions: ['system:dict:list'],
    children: [
      {
        path: 'index/:dictId(\\d+)',
        component: () => import('@/views/system/dict/data'),
        name: 'Data',
        meta: { title: '字典数据', activeMenu: '/system/dict' }
      }
    ]
  },

当两个页面的功能都实现好了之后,开始在主页面添加弹出框,实现内嵌页面。
vue 列表弹框,vue.js,javascript,前端

  • 属性变量props: [‘agentId’],该参数用于父子组件传值
  • 组件创建即created的时候,赋值请求后台加载数据

在父页面中引入子页面:
vue 列表弹框,vue.js,javascript,前端
添加弹出框,内嵌子页面

<el-dialog :title="filterTitle" :visible.sync="filterDialogVisible" v-if="filterDialogVisible" width="1100px"
      append-to-body>
  <el-tabs v-model="filterTabValue" type="border-card" :lazy="true" @tab-click="filterTabClick">
    <el-tab-pane label="内容1" name="hotel">
      <!--  酒店过滤页面    -->
      <HotelFilter :agentId="agentId" v-if="isHotel"></HotelFilter>
    </el-tab-pane>
    <el-tab-pane label="内容2" name="keyword">
      <Keyword :agentId="agentId" v-if="isKeyword"></Keyword>
    </el-tab-pane>
  </el-tabs>
</el-dialog>

父页面通过弹框并将子页面通过引入组件的方式包裹在弹框内,通过:visible.sync=“filterDialogVisible” v-if="filterDialogVisible"进行弹框的展示以及组件的创建和销毁,并且通过父子组件传参的方式切换数据。注意这里需要使用v-if以便子组件可以在create()中动态展示数据。
同理,tabs切换也是通过v-if来控制动态渲染页面。

//设置页面
filterRuleAdd(row) {
  this.agentId = row.agentId;
  this.filterDialogVisible = true;
  this.filterTitle = "渠道名称:" + row.agentName;
  this.filterTabValue = "hotel";
  this.isHotel = true;
},
//禁用配置切换
filterTabClick() {
  if (this.filterTabValue == "hotel") {
    this.isHotel = true;
    this.isKeyword = false;
  } else if (this.filterTabValue == "keyword") {
    this.isKeyword = true;
    this.isHotel = false;
  }
},

参考文档:https://www.jb51.net/article/267510.htm文章来源地址https://www.toymoban.com/news/detail-601945.html

到了这里,关于vue实现弹出框内嵌页面展示,添加tab切换展示实时加载的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Vue3实现带点击外部关闭对应弹出框(可共用一个变量)

    首先,假设您在单文件组件(SFC)中使用了Vue3,并且有两个div元素分别通过`v-if`和`v-else`来切换显示一个带有`.elpopver`类的弹出组件。在这种情况下,每个弹出组件应当拥有独立的状态管理(例如:各自的isOpen变量)。为了实现点击外部关闭对应弹出框的功能,我们需要为每个组

    2024年01月18日
    浏览(105)
  • 【bug】vuxUI组件popup弹出框在IOS中遮罩层会遮住页面

    可以增加自定义方法v-transfer-dom transfer-dom’.js // Thanks to: https://github.com/calebroseland/vue-dom-portal

    2024年04月28日
    浏览(79)
  • 如何在Vue.js中创建模态框(弹出框)

    模态框(弹出层对话框,Modal Popup)在大多数现代应用程序中非常常见。它们主要用于呈现简洁的信息,非常适合显示广告和促销内容。模态框提供了一种快速传达信息的方式,并提供了用户友好的关闭选项。 在本文中,我们将使用Vuejs构建一个弹出模态框。该模态框将包括

    2024年02月08日
    浏览(44)
  • jQuery实现简单弹出框

    1、点击“更多”出现弹出框 2、点击下拉列表触发回调 3、点击空白区域收起弹出框 PS:鼠标右键效果图`另存为`到本地 ,再将图片后缀gif改为rar即可得到完整代码压缩包。 1、提前声明弹出标识做判断; 2、通过jQuery的has()、is()或其他类似方法判断点击的是弹出层以外的空白

    2024年02月11日
    浏览(44)
  • 基于vue+Element Table Popover 弹出框内置表格的封装

    在选择数据的时候需要在已选择的数据中对比选择,具体就是点击一个按钮,弹出一个小的弹出框,但不像对话框那样还需要增加一个遮罩层,更加的轻量化,但是需要查看的数据很多需要一个列表来展示,列表的话还需要一个筛选功能。 我的思路是增加复选框列,将选择的

    2024年02月07日
    浏览(40)
  • 微信小程序实现气泡弹出框

    这个组件可以实现 引用别人的组件,上面github可以很好的实现气泡弹窗效果 show:function(){ //如果show值为true,则更改为false 反之设置true if(this.data.show){ this.setData({ show:false }) }else{ this.setData({ show:true }) } }, he(){ console.log(“sadasdd”) this.setData({ show:!this.show }) wx.navigateTo({ url: ‘/p

    2024年02月09日
    浏览(65)
  • Python利用Selenium实现弹出框的处理

    现如今经常出现在网页上的基于 JavaScript 实现的弹出框有三种,分别是  alert、confirm、prompt  。该章节主要是学习如何利用 selenium 处理这三种弹出框。奥利给,冲! JavaScript的三种对话框是通过调用 \\\"window对象\\\" 的三个方法 \\\"alert()\\\"、\\\"confirm()\\\" 、\\\"prompt()\\\" 来获得,我们可以利用这

    2024年02月01日
    浏览(46)
  • 前端Vue组件之仿京东拼多多领取优惠券弹出框popup 可用于电商商品详情领券场景使用

    随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。通过组件化开发,可以有效实现单独开发,单独维护,而且他们之间可以随

    2024年02月16日
    浏览(55)
  • selenium-弹出框、下拉框

            对js使用的alert、confirm 以及 prompt定位也是项目中常见的,比如弹出提 示框“确定”等。要定位这类提示框具体思路是switch_to_alert()方法定位 alert/confirm/prompt,然后使用text/accept/dismiss/send_keys这一系列动作。 driver.switch_to.alert.accept()         #点击ok driver.switch_t

    2024年02月02日
    浏览(57)
  • 【微信小程序 uniapp】 ws-wx-privacy 微信隐私保护弹出框 隐私协议弹出框

    插件地址 (https://mp.weixin.qq.com/wxamp/basicprofile/index?token=1956320193lang=zh_CN) 4. 将调试基础库改为 3.0.0以上。 微信开发者工具-详情-本地设置-调试基础库 5. 页面 使用示例 仅有在指引中 声明所处理的用户信息 ,才可以调用平台提供的对应接口或组件。若未声明,对应接口或组件将

    2024年02月08日
    浏览(54)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包