Maxbad`Blog

vue-iview使用技巧

2021-03-23 · 2 min read
  • 修改数据
this.items[1]='xxxx';  // 不能监听数据变的
this.$set(this.items,1,'xxxxxx');  // 可以监听数据变化

// 拷贝一份出来,修改后再赋值回去也可以监听
let temp=[...this.items];
temp[1]='xxxxx'
this.tiems=temp;
  • 数据深拷贝,针对数组和对象使用
import { deepCopy } from 'view-design/src/utils/assist';
// deepCopy(data)

Object.assign 和es6扩展运算符 三个点{...} 只针对一层对象可用,多层需要通过JSON.parse(JSON.stringify())达到深拷贝

  • 获取对象样式
import { getStyle } from 'view-design/src/utils/assist';
// getStyle (element, styleName)
  • 判断参数是否是其中之一
import { oneOf } from 'view-design/src/utils/assist';
// oneOf (value, validList)
  • 类操作
import { hasClass,addClass,removeClass } from 'view-design/src/utils/assist';
// hasClass(el, cls) 
// addClass(el, cls)
// removeClass(el, cls)
  • 兼容SSR的事件绑定监听dom事件
import { on, off } from 'view-design/src/utils/dom';
  • 清空Select 选择器
this.$refs.xxxxxx.clearSingleSelect();
  • 清空DatePicker(日期选择器)
this.$refs.xxxxxx.handleClear()
  • 清空TimePicker(时间选择器)
this.$refs.xxxxxx.handleClear()
  • 清空Table (表格) 选中的所有项
this.$refs.xxxxxx.selectAll(false);
  • 清空Form验证
this.$refs.xxxxxx.resetFields();