VUE+Element中eldialog弹框控制最小宽度

在这里插入图片描述

	<template>
	  <div>
	    <div>
	      <el-button @click="dialogFormVisible=true">
	        打开
	      </el-button>
	    </div>
	    <el-dialog title="弹框" :visible.sync="dialogFormVisible" :width="dialogWidth">
	      <el-form  :model="addline" >
	        <el-row :gutter="10">
	          <el-col>
	            <el-form-item label="标题" prop="title">
	              <el-input
	                v-model="addline.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: 'DialogWidth',
		  data() {
		    return {
		      addline: {
		        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 //宽度最小为800,可修改
		     //窗口宽度小于默认宽度时,将弹框看度设置为50%,可修改
		      if (val < def) {
		        this.dialogWidth = '50%'
		      } else {
			 //窗口宽度大于默认宽度1200时,将弹框设置为400宽度,可修改
		        this.dialogWidth =  '400px'
		      }
		    }
		  }
		}
	</script>
	
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

武良神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值