1 Star 6 Fork 2

码农小易 / el-query-filter

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 3.69 KB
一键复制 编辑 原始数据 按行查看 历史
码农小易 提交于 2021-05-27 09:38 . 完成README.md

el-query-filter

介绍

基于element-ui的自定义多条件查询组件。对于大多数业务,查询数据时都需要提前构建许多字段输入框用于查询,这是一件非常繁琐且麻烦的时候,所以开发此组件,方便用户自定义查询的字段。

所需依赖

由于该组件基于element-ui开发,请先加入element-ui插件。 [具体请看Element官网文档](组件 | Element)

安装教程

npm install el-query-filter

使用说明

在main.js中写入以下内容:

import Vue from 'vue';
// 载入Element-ui插件
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
// 载入el-query-filter组件
import ElQueryFilter from 'el-query-filter';

import App from './App.vue';

Vue.use(ElementUI);
// 使用el-query-filter组件
Vue.component(ElQueryFilter.name, ElQueryFilter);

new Vue({
  el: '#app',
  render: h => h(App)
});

以上代码便完成了 Element 以及el-query-filter的引入。

el-query-filter Attributes

参数 说明 类型 可选值 默认值
modal 是否需要遮罩层 boolean false
direction Drawer 打开的方向 string rtl / ltr / ttb / btt ttb
maxQueryCount 最大查询条数量 number 5
isShow 是否显示 ,支持 .sync 修饰符 boolean false
options 请参考 el-query-filter Options object

el-query-filter Options

参数 说明 类型 例子
fields 字段对象数组 object[] [{ label: "姓名", value: "name" },{ label: "年龄", value: "age" }]
operators 操作符对象数组 object[] [{ label: "=", value: "eq" },{ label: ">", value: "gt" }]
logics 逻辑符号对象数组 object[] [{ label: "且", value: "and" },{ label: "或", value: "or" }]

Events

事件名称 说明 回调参数
confirm 查询确认按钮回调事件 返回用户输入查询条件,json格式

使用实例

<template>
  <div id="app">
    <el-button @click="showQueryFilter = true">Show</el-button>
    <el-query-filter
      :isShow.sync="showQueryFilter"
      :options="queryFilterOptions"
      @confirm="confirmHandler"
    ></el-query-filter>
    <span>{{data}}</span>
  </div>
</template>

<script>
export default {
  name: "app",
  data() {
    return {
      data: "",
      showQueryFilter: true,
      // 查询条件
      queryFilterOptions: {
        fields: [
          { label: "姓名", value: "name" },
          { label: "年龄", value: "age" },
          { label: "手机号", value: "phone" },
        ],
        operators: [
          { label: "=", value: "eq" },
          { label: ">", value: "gt" },
          { label: "", value: "ge" },
          { label: "<", value: "lt" },
          { label: "", value: "le" },
        ],
        logics: [
          { label: "", value: "and" },
          { label: "", value: "or" },
        ],
      },
    };
  },
  methods: {
    confirmHandler(data) {
      this.data = data;
    }
  }
};
</script>
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
JavaScript
1
https://gitee.com/liupeiqiang/el-query-filter.git
git@gitee.com:liupeiqiang/el-query-filter.git
liupeiqiang
el-query-filter
el-query-filter
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891