弹窗内容第二种:全局设置在mian.js里面:import Elem._elementui表单的bug">
当前位置:   article > 正文

elment ui 组件bug总结_elementui表单的bug

elementui表单的bug

一、element-ui dialog设置为点击弹窗以外的区域不关闭弹窗

第一种:
el-dialog标签中添加:close-on-click-modal="false"即可

  1. <el-dialog title="标题" :close-on-click-modal="false" :visible.sync="dialogEnrol" width="30%">
  2. 弹窗内容
  3. </el-dialog>

第二种:全局设置

  1. 在mian.js里面:
  2. import ElementUI from 'element-ui';
  3. // 修改 el-dialog 默认点击遮照为不关闭
  4. ElementUI.Dialog.props.closeOnClickModal.default = false

二、.select 里面的option 的宽度跟最外的下拉框宽度不一致解决办法, 在select标签里面加style:100%

三、全局设置 size  ,button、input  等 我不想要那么大的size就可以全局设置一个尺寸:

全局配置

在引入 Element 时,可以传入一个全局配置对象。该对象目前支持 size 与 zIndex 字段。size 用于改变组件的默认尺寸,zIndex 设置弹框的初始 z-index(默认值:2000)。按照引入 Element 的方式,具体操作如下:

1.完整引入 Element: 在main.js 里面

  1. import Vue from 'vue';
  2. import Element from 'element-ui';
  3. Vue.use(Element, { size: 'small', zIndex: 3000 });

2.或者用按需引入:

按需引入 Element:

  1. import Vue from 'vue';
  2. import { Button } from 'element-ui';
  3. Vue.prototype.$ELEMENT = { size: 'small', zIndex: 3000 };
  4. Vue.use(Button);

 按照以上设置,项目中所有拥有 size 属性的组件的默认尺寸均为 'small',弹框的初始 z-index 为 3000。

  1. //在index.js文件中 设置size
  2. Vue.use(Element, { size: 'small'});

四、element-ui表单验证时需要number类型

解决方式

v-model的时候加个number修饰符就可以了。

五、element设置表格el-table表头的颜色

  1. 使用header-cell-style可以修改它 的背景及其他
  2. <!--内容表格-->
  3. <el-table
  4. :data="tableData"
  5. border
  6. :header-cell-style="{background:'#000', color:'#fff'}"
  7. style="width: 95%;margin: 40px;">

效果如下: 

在这里插入图片描述

六、element-ui 表格的某一列的字段字体变颜色2种方法

方法①:  :cell-style="cellStyle"

  1. //修改单元格样式的方法
  2. cellStyle(row, column, rowIndex, columnIndex){
  3. if (row.row.errorMsg == "已存在相同记录"){
  4. if (row.columnIndex === 3){
  5. return 'color: red'
  6. }
  7. }
  8. },

方法② 用卡槽的方法去解决

  1. <el-table-column label="ciName" prop="ciName" width="180" show-overflow-tooltip>
  2. <template slot-scope="scope">
  3. <span v-if="scope.row.errorMsg" style="color: red">{
  4. {scope.row.ciName}}</span>
  5. <span v-else>{
  6. {scope.row.ciName}}</span>
  7. </template>
  8. </el-table-column>

效果如下:

注: 表格数据在渲染的时候, 建议使用深拷贝的方法,赋值一下。否则会出现,表格数据更新延迟。 深拷贝方法: this.excelData = JSON.parse(JSON.stringify(this.excelData));

七、vue项目控制台报警告:

sockjs.js?9be2:2999 WebSocket connection to 'ws://localhost:8083/sockjs-node/264/g0wa1uvw/websocket' failed: WebSocket is closed before the connection is established

解决办法:webpack热部署导致的问题
注释掉
node_modules\sockjs-client\dist\sockjs.js

里面
1604行这个就可以了

八、element中table单元格添加tooltip  并且根据后台返回的数据判断,tooltip是否显示

废话不多说,直接贴代码:

  1. <el-table-column label="ciName" prop="ciName" width="180">
  2. <template slot-scope="scope">
  3. <el-tooltip placement="top" effect="light" v-if="scope.row.errorMsg">
  4. <div style="color:red">{
  5. {scope.row.ciName }}</div>
  6. <div slot="content" style="color:red">{
  7. {scope.row.errorMsg}}</div>
  8. </el-tooltip>
  9. <div v-else>{
  10. {scope.row.ciName }}</div>
  11. </template>
  12. </el-table-column>

分析: 这种一般肯定用的卡槽的方法显示数据,slot-sope

可以把条件写在  el-tooltip  标签里面 v-if  
然后还要一个 v-else  不需要   el-tooltip  的,只显示数据的。

九、elment-ui  搜索条件太多,可以做一个收起/展开的功能,比较好

先上效果图:
展开:

 收起:

代码如下:

  1. <a style="margin-left:10px" @click="toggleAdvanced">
  2. {
  3. { advanced ? '收起' : '展开'}}
  4. <i :class="advanced ? 'el-icon-arrow-up' : 'el-icon-arrow-down' "></i>
  5. </a>

在你要隐藏的部分加上  v--show=“advanced"  

  1. <el-row :gutter="24" v-show="advanced">
  2. 要隐藏的内容。。。
  3. </el-row>

js 定义变量:  advanced: false, //展开/收起

方法:

  1. // 展开/收起
  2. toggleAdvanced(){
  3. this.advanced = !this.advanced;
  4. },

十、elment-ui 表格数, 默认是第一列展开的,我想从第二列开始,

解决办法:只需要:你把第一列的el-table-column的type设置为type=“”,下拉就到第二列去了

十一、element-ui  el-radio-group for循环时取值,老是label的值???

错误写法:

  1. <el-radio-group v-model="formData.type" @change="onChangeType">
  2. <el-radio v-for="(item, index) in menuTypeList" :value="item.value" :label="item.label" :key="index">
  3. {
  4. { item.label}}
  5. </el-radio>
  6. </el-radio-group>

正确写法: 把::label="item.value"  就可以了

  1. <el-radio-group v-model="formData.type" @change="onChangeType">
  2. <el-radio v-for="(item, index) in menuTypeList" :value="item.value" :label="item.value" :key="index">
  3. {
  4. { item.label}}
  5. </el-radio>
  6. </el-radio-group>
  7. //改变类型
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/546510
推荐阅读