0.1.12 • Published 2 years ago

el-filter v0.1.12

Weekly downloads
3
License
MIT
Repository
github
Last release
2 years ago

el-filter

ElFilter

下载依赖

# npm
npm install el-filter --save

# yarn
yarn add el-filter
// main.js 引入
import Vue from 'vue'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import ElFilter from 'el-filter'

Vue.use(ElementUI);
Vue.use(ElFilter);

new Vue({
  render: h => h(App),
}).$mount('#app')

组件使用

<el-filter
  :data="filterInfo.data"
  :field-list="filterInfo.fieldList"
  :list-type-info="listTypeInfo"
  @handleFilter="handleFilter"
  @handleReset="handleReset"
  @handleEvent="handleEvent"
/>

属性配置

data: () => ({
  filterInfo: {
    data: {
      name: null,
      age: null,
      count: 1,
      sex: 1,
      date: null,
      dateTime: null,
      range: null
    },
    fieldList: [
      { label: '姓名', type: 'input', value: 'name' },
      { label: '年龄', type: 'input', value: 'age', disabled: true },
      { label: '计数', type: 'inputNumber', value: 'count', min: 1, max: 10 },
      { label: '性别', type: 'select', value: 'sex', list: 'sexList' },
      { label: '日期', type: 'date', value: 'date' },
      { label: '创建时间', type: 'date', value: 'dateTime', dateType: 'datetime', clearable: true  },
      { label: '时间区间', type: 'date', value: 'range', dateType: 'daterange' }
    ]
  },
  listTypeInfo: {
    sexList: [
      { id: 1, name: '男' },
      { id: 2, name: '女' },
      { id: 3, name: '保密' },
    ]
  }
}),

methods: {
  /**搜索 */
  handleFilter (row) {
    console.log(row);
  },
  /**重置 */
  handleReset (row) {
    console.log(row);
  },
  /**焦点失去事件 */
  handleEvent (row) {
    console.log(row);
  }
}

参数配置

参数默认数据类型是否必传说明
data{}Object必传字段默认数据
fieldList[]Array必传字段配置项
listTypeInfoObjectObject非必传下拉列表数据集
btnHiddenfalseBoolean非必传按钮区域是否隐藏
foldBtnHiddenfalseBoolean非必传是否取消折叠功能
sizeminiString非必传组件尺寸
count4Number非必传默认搜索条数
width{labelWidth: 110, itemWidth: 220}Object非必传组件及label宽度
btnStyle[]Object非必传按钮配置项 (见示例 ↓ )

按钮配置项示例:

// 示例
btnStyle: [
  { icon: 'el-icon-search', text: '过滤',type: 'primary' },
  { icon: 'el-icon-refresh', text: '重置' }
]

// 组件接受参数值
btnStyle: {
  type: Array,
  default: () => [
    { icon: null, text: '搜索', disabled: false, type: 'primary', plain: false, round: false },
    { icon: null, text: '重置', disabled: false, type: null, plain: false, round: false }
  ]
}

暴露方法及事件

/**搜索 */
handleFilter (row) {
  console.log(row);
},
/**重置 */
handleReset (row) {
  console.log(row);
},
/**焦点失去事件 */
handleEvent (row) {
  console.log(row);
}
0.1.10

2 years ago

0.1.11

2 years ago

0.1.12

2 years ago

0.1.8

2 years ago

0.1.7

2 years ago

0.1.9

2 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.4

4 years ago

0.1.3

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.1.0

4 years ago