项目是基于vue+iview+typescript,iview和typescript都是首次在项目中使用,特把遇到的问题总结汇总以备查看。

1.input无法监听enter事件

<input @keydown.enter='getPage()'></input>

这样写enter事件无效

使用.native修饰,就可以监听到enter事件了

<input @keydown.native.enter='getPage()'></input>

这就是在某个组件

的根元素监听一个原生事件 可以使用 .native 修饰 v-on

2.iview重置表单不能用

handleReset(name) {
let vm = this;
if (this.$refs[name] !== undefined) {
this.$refs[name].resetFields();
}
}

加一个if判断就可以了

3.校验表单不能用或者报错 "TypeError: Cannot read property 'validate' of undefined"

原因

传参不对

this.$refs[ruleForm].validate() 方式不识别。需要使用: this.$refs.ruleForm.validate();

4.iview多选框复选框

<FormItem label="菜单名称">
<CheckboxGroup v-model="addRole.list" v-for="(item,index) in menuArr" :key="index">
<Checkbox :label="item.menuName"></Checkbox>
</CheckboxGroup>
</FormItem>

注意

list需要定义为数组

lable加冒号

5.iview的复选框与前后台交互问题

静态页面

<checkbox-group v-model="pageItem.stu_batch">
<Checkbox label="1">综合院校</Checkbox>
<Checkbox label="2">提前批招生</Checkbox>
<Checkbox label="3">无批次招生</Checkbox>
<Checkbox label="4">第一批次招生</Checkbox>
<Checkbox label="5">第二批次招生A</Checkbox>
<Checkbox label="6">第二批次招生B</Checkbox>
<Checkbox label="7">第三批次招生A</Checkbox>
<Checkbox label="8">第三批次招生B</Checkbox>
</checkbox-group>
//渲染页面的数据 pageItem:{
stu_batch:[],//定义为数组(官方api为数组)
}

与后台交互的对象(需要与前面pageItem进行赋值)

pageItemAddAndUpd: {
stu_batch:"",//因为我这边后台接收的为字符串
}
//这里赋值需要进行判断(因为如果是返回时空值没有填数据的话需要进行判断) if(response.data.datalist[0].stu_batch==""||response.data.datalist[0].stu_batch==null){
this.pageItem.stu_batch = [];
}else{
this.pageItem.stu_batch = JSON.parse(response.data.datalist[0].stu_batch);
}
//这里是保存操作 this.pageItemAddAndUpd.stu_batch = JSON.stringify(this.pageItem.stu_batch)//需要将数组转化成字符串进行后台保存

6.iview左边导航栏太长不能滚动

父元素加个overflow: auto;就可以了

7.iview两层弹窗第二个一闪而过

setTimeout(_ => {
vm.$Modal.confirm({
title: '登录信息',
content: '数据库未发现该序列号'
});
}, 500);

第二个弹窗加个延迟

8.iview表格按钮不同情况显示不一样

h('Button', {
props: {
type: 'error',
size: 'small'
},
style: {
marginRight: '5px',
display: (params.row.isValid === 0 && this.type === 'tableRole') ? "inline-block" : "none"
},
on: {
click: () => {
this.addRole.roleId = params.row.roleId;
this.dataDelete.push(params.row);
this.modalDelete = true;
}
}
}, '删除')

样式中display判断一下

9.button的disable用法

<button :disable='isDisable()'>
//直接省略(),会有报错提示

10.持续更新中

iview开发中遇到的问题汇总的更多相关文章

  1. PHP开发中的缓存技术汇总

    在PHP开发中,出于对网站服务器负载的考虑,往往需要对页面.数据等内容进行缓存处理,下面就来看看,在PHP开发中有哪些缓存方式吧. 1.页面部分缓存该种方式,是将一个页面中不经常变的部分进行静态缓存, ...

  2. Ionic2 + Angular4 + JSSDK开发中的若干问题汇总

    前景 目前微信公众号程序开发已经相当火热,客户要求自己的系统有一个公众号,已经是一个很常见的需要. 使用公众号可以很方便的便于项目干系人查看信息和进行互动,还可以很方便录入一些电脑端不便于录入的数据, ...

  3. iOS开发-- 开发中遇到的问题汇总

    1. CUICatalog: Invalid asset name supplied: 今天写了加载图片,默认图片写的是[UIImage imageNamed:@""],之后就报下 ...

  4. android开发中遇到的问题汇总【九】

    244.http请求的url含有中字符时.须要Uri编码.Uri.encoder() 245.使用androidstudio时,不知道什么原因svn不见了 Android Studio missing ...

  5. javaweb学习总结二十二(servlet开发中常见的问题汇总)

    一:web应用的映射问题 通常我们从别人那里拷贝来的代码,自己会修改应用的名称,但是web映射的访问路径并没有修改,还是原来的映射. 解决方法: 工程右键--properties--myeclipse ...

  6. 移动Web 开发中的一些前端知识收集汇总

    在开发DeveMobile 与EaseMobile 主题 的时候积累了一些移动Web 开发的前端知识,本着记录总结的目的,特写这篇文章备忘一下. 要说移动Web 开发与传统的PC 端开发,感觉也没什么 ...

  7. AngularJS移动开发中的坑汇总

    使用AngualrJs开发移动App已经快半年了,逐渐积累了非常多AngularJS的问题,特别是对于用惯了Jquery的开发人员,转到AngularJS还是须要克服非常多问题的.不像Jquery那样 ...

  8. UI开发学习中遇到的问题汇总

    1.给UIView设置圆角,边框,阴影绘制,需要使用layer 1)设置圆角cornerView.layer.cornerRadius = 20; //设置试图圆角的大小cornerView.laye ...

  9. [转]AngularJS移动开发中的坑汇总

    使用AngualrJs开发移动App已经快半年了,逐渐积累了很多AngularJS的问题,特别是对于用惯了Jquery的开发者,转到AngularJS还是需要克服很多问题的.不像Jquery那样侧重D ...

  10. 【Android】开发中个人遇到和使用过的值得分享的资源合集

    Android-Classical-OpenSource Android开发中 个人遇到和使用过的值得分享的资源合集 Trinea的OpenProject 强烈推荐的Android 开源项目分类汇总, ...

随机推荐

  1. Vue3+Ant-design项目启用ts/typescript

    Ant-design官方文档提供了js和ts两种案例,按照文档给项目install ant-design后写了个组件编译时发现只要加上`<script lang="ts"&g ...

  2. P1514 [NOIP 2010 提高组] 引水入城 题解

    题意:P1514 [NOIP 2010 提高组] 引水入城有点复杂,自己看吧. 思路 这里提供一个好像没见过的纯 DP 做法,不需要神秘的证明以及任何脑子,直接顺着思路做即可. 首先判断正确性就是从第 ...

  3. python中list、tuple、set、dict区别

    list.tuple.set.dict区别 参考:python的列表,字典,元组,集合的区别和各自使用方法 遍历set 由于set也是一个集合,所以,遍历set和遍历list类似,都可以通过for循环 ...

  4. Varlet UI-Material Design风格Vue 3框架移动端组件库

    Varlet UI是什么 在现代Web开发中,Vue 3以其强大的组件系统特性,成为了构建可复用.模块化应用界面的首选框架.而在Vue 3的生态系统中,Varlet UI开源组件库以其高效.一致和可维 ...

  5. Kafka King 推荐一款漂亮、现代、实用的kafka客户端

    Kafka King 一个漂亮.现代.实用的kafka客户端,使用python flet.flutter构建. Github主页:https://github.com/Bronya0/Kafka-Ki ...

  6. pytest.mark.parametrize 传参

    pytest.mark.parametrize 是pytest用来参数化测试的一个装饰器,它允许你为测试函数或测试类提供多组参数list, 这样就可以使用每组参数执行测试函数或测试类,实现参数化驱动, ...

  7. 邮件传输协议SMTP和SMTPS

    在<使用Spring Boot 优雅地发送邮件>中,我们实现了spring boot集成spring-boot-starter-mail,使用JavaMailSender发送电子邮件的功能 ...

  8. AWK用法全解

    一.awk介绍 awk是Linux自带的一个逐行扫描的文本处理工具,支持正则表达式.循环控制.条件判断.格式化输出.AWK自身带有一些变量,可以在书写脚本时调用. 二.基本语法格式 2.1.在shel ...

  9. Mysql中长连接和短连接的区别

    区别如下: 长连接:长连接是相对于短连接来说的.长连接指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包. mysql的长连接如果长期闲置,mysql会8小 ...

  10. 「Note」树论方向

    1. 重链剖分 1.1. 简介 重链剖分将树分割成若干链维护信息,将树的结构转换为线性结构,然后可用其他数据结构维护. 定义以下概念: 重子节点 轻子节点 重边 轻边 重链 某节点的子节点中子树大小最 ...