实现ElementUI Dialog宽度响应式变化
在ElementUI的Dialog中,需要实现其宽度随浏览器宽度变化而变化,并设定默认值,当浏览器宽度大于该值时,Dialog保持该宽度,小于该值时,使用100%宽度。
代码使用 window.onresize 事件触发变化,具体Demo代码如下
<template>
<div class="app-container">
<div class="filter-container">
<el-button type="primary" icon="el-icon-edit" @click="dialogFormVisible=true">
打开
</el-button>
</div>
<el-dialog title="Test" :visible.sync="dialogFormVisible" :width="dialogWidth">
<el-form ref="dataForm" :model="temp" label-position="left" label-width="110px">
<el-row :gutter="10">
<el-col>
<el-form-item label="标题" prop="title">
<el-input
v-model="temp.title"
placeholder="请输入培训标题"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible=false">
取消
</el-button>
</div>
</el-dialog>
</div>
</template> <script>
export default {
name: 'DialogWidthDemo',
components: {
},
data() {
return {
temp: {
title: ''
},
dialogWidth: 0,
dialogFormVisible: false
}
},
created() {
this.setDialogWidth()
},
mounted() {
window.onresize = () => {
return (() => {
this.setDialogWidth()
})()
}
},
methods: {
setDialogWidth() {
console.log(document.body.clientWidth)
var val = document.body.clientWidth
const def = 800 // 默认宽度
if (val < def) {
this.dialogWidth = '100%'
} else {
this.dialogWidth = def + 'px'
}
}
}
}
</script> <style scoped> </style>
效果如下


实现ElementUI Dialog宽度响应式变化的更多相关文章
- Vue响应式变化
Vue有一个很方便的特性就是Vue的双向绑定,即响应式变化,在Vue2.X版本中,Vue响应式变化靠的是Object.defineProperty方法实现的,但是这个方法有个问题,就是对数组的支持不全 ...
- VUE下echarts宽度响应式
window.addEventListener("resize", () => { myChart2.resize();});
- vue响应式数据变化
vue响应式数据变化 话不多说,先上代码: //拷贝一份数组原型,防止修改所有数组类型变量的原型方法 let arrayProto = Array.prototype;// 数组原型上的方法 let ...
- 第四课 开发uehtml官网响应式静态页面
概况:整站布局.头部菜单响应式设置.最新消息模块变化.内容模块四三二响应式变化. 伪类选择器: E:nth-of-type(n) 表示E父元素中的第n个字节点,且类型为E E:nth-la ...
- Windows 10 响应式设计和设备友好的开发
使用Effective pixels有效像素设计UI 什么是缩放像素和Effective有效像素: 当你的应用程序运行在Windows的设备,系统用一个算法控制的规范,字体,和其他UI元素显示在屏幕上 ...
- 段落p元素内的响应式文本布局就靠rem单位实现
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8&qu ...
- HTML5+CSS3的响应式网页设计:自动适应屏幕宽度
这几天都在修改博客上面的样式.本来用的是d83.0的模板.自己又修改了许多地方,其中自己修改的一些地方在手机里面显示的效果不是很理想,于是想改成自适应的效果.对CSS3不是特别的熟练,只能去网上找找案 ...
- 基于bootstrup3全屏宽度的响应式jQuery幻灯片特效
这是一款效果非常酷的基于Bootstrup3.x和HTML5的响应式全屏宽度jQuery幻灯片特效.该幻灯片能自适应屏幕的宽度,使用HTML5的data属性来指定幻灯片所需的各种属性.使用简单,界面美 ...
- jquery手机端产品列表响应式宽高检测宽度赋值给高度让宽高相同
在手机端浏览商品列表,开发人员懂得设计图片做正好的尺寸,那样浏览很好,但有人天生泛懒图片都是随手上传不管大小合适不合适,要求还是响应式的.今天就用jquery检测宽度,并赋值给高度来实现错位问题 &l ...
随机推荐
- 记录libreoffice实现office转pdf(适用于windows、linux)
由于目前的工作跟office打交道比较多,所以才有了此篇blog,需求是实现word转换pdf方便页面展示.之前lz采用的是jacob(仅支持windows)进行转换的,但是现在服务器改成linux显 ...
- 前端笔记之Vue(四)UI组件库&Vuex&虚拟服务器初识
一.日历组件 new Date()的月份是从0开始的. 下面表达式是:2018年6月1日 new Date(2018, 5, 1); 下面表达式是:2018年5月1日 new Date(2018, 4 ...
- 使用paramiko模块进行封装,远程操作linux主机
import time import paramiko class HandleParamiko: ''' 定义一个linux处理类 ''' def __init__(self, hostname, ...
- Oracle数据 查询操作日志
SELECT t.SQL_TEXT, t.FIRST_LOAD_TIME,t.PARSING_SCHEMA_NAME FROM v$sqlarea t WHERE t.SQL_TEXT LIKE 'D ...
- 【计算机网络】WebSocket实现原理分析
1.介绍一下websocket和通信过程? 1.1 基本概念 [!NOTE] Websocket是应用层第七层上的一个应用层协议,它必须依赖 HTTP 协议进行一次握手 ,握手成功后,数据就直接从 T ...
- sql慢查询工具(配置代码)
# 在mysql的配置文件/etc/mysql/mysql.conf.d/mysqld.cnf[mysqld]中配置懒查询 slow_query_log = ON # 是否已经开启慢查询 long_q ...
- Python Turtle绘画初学编程——六芒星,浪形圈
老师上课说可以自学一下python中的绘图turtle,就自己初步学习了一下,做了两个简单的绘图——六芒星和浪形圈(其实我也不知道该叫它什么,就照样子编了个词
- 帝国CMS QQ登陆接口插件 适用于所有帝国7.2版本
插件名称:帝国CMS-QQ登录插件 插件作者:帝国CMS官方 插件介绍:帝国CMS系统的QQ登录插件. 官方网站:http://www.phome.net ---------------------- ...
- opencv::证件照背景替换
证件照背景替换 K-Means 背景融合 – 高斯模糊 遮罩层生成 #include <opencv2/opencv.hpp> #include <iostream> usin ...
- 「SAP 技术」SAP BP显示供应商账户组时候的怪现象
SAP BP显示供应商账户组时候的怪现象 BP事务代码显示某个vendor的时候,笔者发现对于账户组字段选项列表里,不显示当前vendor的account group. 如下图,该供应商的accoun ...