• iview在项目中遇到的坑


    1、下拉框选中某一项搜索发现总是搜不到,最后发现是选中后选中值后边莫名多了很长的空格,原因很简单,在代码中opction闭合标签和主体没有在一行。

    2、iview+vue项目中,用百分比或者display:flex弹性盒布局,而且多层标签下的table容易出现宽度变得很大,在加载中就像加了动画一样宽度在变大。要么改变布局,要么将table宽度设定,如

    在初始化时将宽度设为父级宽度的多少或者其他。

    3、iview select 远程搜索时,回显后点击搜索框再点击其他地方使其失去焦点则会将回显的搜索词清空。可以参考光放中的setQuery属性。(不建议或者iview的select远程搜索自我感觉不怎么好用,可以自己封装一个)

    4、使用v-if要注意,如果里面有初始化获取的数据,容易造成数据丢失。比如v-if中有一个select组件,当true->false->true,下拉框数据容易丢失。

    5、iview 中的InputNumber 有设置为空的需求的话,还是建议换成输入框然后加入限制吧,不然会相当麻烦。(比如选择值后再为空,也就是说取消设值,当然这种需求很少)

    如:有这么一个需求:新增时候可以为空可以选择值(只能整数字),在修改时候不能为空,这个时候倒不如用input:

    HTML:

    <FormItem label="序号" prop="serialNumber">
         <Input v-model="formValidate.serialNumber" :maxlength="5"  style=" 286px"></Input>
         <!-- <InputNumber :max="100000"
                    :min="1"
                    v-model.trim="formValidate.serialNumber"
                    style=" 286px;"></InputNumber>-->
    </FormItem>

    data:

    const validateAge = (rule, value, callback) => {
            if (!Number.isInteger(value*1)) {
                callback(new Error('序号只能为整数字'));
            } else if(value*1<=0&&!util.isEmpty(value)) {
                callback(new Error('序号必须大于0'));
            }else if (util.isEmpty(value)) {
              if (this.modalFlag.custom.updateBasicData) {
                callback(new Error('序号不能为空'));
              }else{
                callback();
              }
            } else{
                callback();
            }
        };

    data.return校验:

    serialNumber: [{ validator: validateAge, trigger: 'blur'}],

    还有很多,当时没注意记录,现在也想不起来了。随手记录多重要的习惯。

  • 相关阅读:
    线性表的顺序存储结构详解
    Java就业急训营-感悟与分享
    在Ubuntu系统下用C语言编写程序
    NTIRE介绍和近年来超分SR结果展示
    《王道操作系统》学习笔记:计算机系统概述
    JavaScript 语言通识 — 重学 JavaScript
    python利用numpy存取文件
    Batch Normalization(批标准化,BN)
    全零填充(padding)
    感受野(Receptive Field)理解为什么采用多层小卷积核来替换一层大卷积核
  • 原文地址:https://www.cnblogs.com/wy120/p/11046328.html
Copyright © 2020-2023  润新知