Vue2使用IView框架遇到的各种疑难杂症(自用版)

245 阅读3分钟

前言:本文是作者个人记录的文章,旨在记录在实际项目开发中遇到的问题,并提供了一些解决思路。虽然这些解决思路可能并不完美,但暂时解决了问题。

IView版本:4.7.0

Vue版本:2.5.2

  1. 问题1:IView使用Tabs标签页组件,在v-if隐藏条件下,重新显示组件时,快速点击其他Tab页会导致从父组件传递到子组件的数据会来不及渲染出来,呈现无数据的组件状态
    解决:既使用了监听,又在mounted生命周期方法里,进行重新赋值,这样就能在任何时候都能拿到传过来的数据了

  2. 问题2:IView的Form组件,给ref属性赋值,打印该组件的validate方法也有返回,但是运行该方法时不起作用(既不报错也不运行);IView的Form组件,校验某个值时,发现并没有按照校验规则里的方法进行校验,但是同样的既不报错也不运行。
    解决:进行表单验证时,通过refs获取到的Dom元素出错,原因是两边不一致;或者是其他在校验规则里报错的问题

  3. 问题3:在A页面请求一个放在Vuex的公用请求方法,数据存在了Vuex的state里面,然后在B页面又请求一次该方法,但是在B页面请求的时候,还是发起了请求,并没有使用state的数据。
    解决:后来发现,请求接口调用错误,调的不是一开始的接口,是另外一个接口,所以导致修改也不生效

  4. 问题4:阿里云压缩图片时,每张图片的宽高不一样,导致某些切图效果看起来图片被拉伸了。
    解决:在给阿里云压缩图片固定宽高的时候,往小了压缩,如果本来是宽150px,高100px的是两倍压缩,为宽300,高200的压缩,但是可能会导致其他图片进行拉伸,所以改为按1.5倍压缩,为宽225,高150的压缩,这样能减少大图的压缩时的图片缩放效果问题、但是无法避免小图放大时的缩放效果问题

  5. 问题5:IView在Modal中编写标签,但是标签不生效
    解决:VScode并没有成功保存代码,VSCode界面右下角提示点保存

  6. 问题6:IView在Form表单校验的字段正确的情况下,打印的值一直为空导致校验失败
    解决:并没有解决,只是换了思路,直接获取页面的值,没有从拿校验方法的value来对应相对的值

  7. 问题7:IView在第二次打开含有Tabs组件的页面时,会突然多出两个在某个Tab页的子级Tab标签
    解决:使用IView的Tabs的name属性和TabPane的tab属性即可解决。分别给两个Tabs组件的标签设置

  8. 问题8:form表单的输入框的内容在其他点击事件里清空了输入框的内容,数据删除了但是视图上还是有文字
    解决:因为输入框绑定的数据是对象里的属性,但是在定义该对象时并没有赋值任何属性