1、filters:接收一个数组,数组中有多少项就会在过滤框展示多少项,每一项的label就是展示的标题,value就是对应的赋值。写了filters就要写filterMethod,这个函数接收两个值value,row。value就是filters中写的value,row是所有行的数据,也就是说表格有几行就有多少条数据,例如:
1{name: "John Brown", age: 18, address: "New York No. 1 Lake Park", date: "2016-10-03", _index: 0, …}
2{name: "Jim Green", age: 24, address: "London No. 1 Lake Park", date: "2016-10-01", _index: 1, …}
3{name: "Joe Black", age: 30, address: "Sydney No. 1 Lake Park", date: "2016-10-02", _index: 2, …}
4{name: "Jon Snow", age: 26, address: "Ottawa No. 2 Lake Park", date: "2016-10-04", _index: 3, …}
2、filteredValue接收的是一个数组,这个数组中的数据就是初始加载的时候的过滤条件,不写代表初始不进行筛选。
3、indexOf这个方法是表示在一个存储对象(数组,字符串等)中寻找数据,有的话就返回该数据的位置,没有就返回-1。例如:
1 a='dsafwf'
2 a.indexOf('c')
3 -1
4 a.indexOf('a')
5 2
4、handleFilterChange()方法会接收col的返回值,这个返回值里真正有用的是col._filterChecked和col.key,col.key获取到的是当前列的key,也就是column里面定义的那个key.col._filterChecked得到的是点击的筛选条件的value。localStorage不能存储数组,只能存储字符串。使用方法:localStorage.setItem(key, value)
5、要注意的是空字符串是没有length的,所以如果不判断的话会报错。JSON.stringify()是将数组,对象之类的转成字符串,其实就是在最外层加了两个引号,JSON.parse()是将字符串重新转成对象或者数组。