可搜索可排序双列表框组件– vue-select-sides

可搜索可排序双列表框组件– vue-select-sides
插件名称 vue-select-sides
发布时间 2020年4月13日
插件作者 juliorosseti

vue-select-sides是一个双列表框组件,可通过在两个可搜索,可排序,可分组,并排的列表框之间移动选项来选择选项。

安装和下载:

# Yarn
$ yarn add vue-select-sides

# NPM
$ npm install vue-select-sides --save

变更日志:

v1.1.6(11/13/2020)

  • 添加波兰语区域设置
  • Bug修复
  • 启用选项以禁用列表项

v1.1.5(2020年10月7日)

  • 错误修正

v1.1.4(10/06/2020)

  • 修复了插件安装中未定义的defaultOptions的问题

使用:

1.将vue-select-sides作为组件导入。

import vueSelectSides from "vue-select-sides";

2.导入您选择的主题。

// modern 主题
@import "/node_modules/vue-select-sides/styles/themes/soft.scss";
// 或dark 主题
@import "/node_modules/vue-select-sides/styles/themes/dark.scss";
// 或light 主题
@import "/node_modules/vue-select-sides/styles/themes/light.scss";

3.将vue-select-sides添加到模板。

<!-- 分组 -->
<vue-select-sides
  type="grouped"
  v-model="selected"
  :list="list"
></vue-select-sides>
<!-- 镜子 -->
<vue-select-sides
  type="mirror"
  v-model="selected"
  :list="list"
></vue-select-sides>

4.注册该组件,并为双重列表框定义选项列表。

export default {
  components: {
    vueSelectSides
  },
  data() {
    return {
      selected: {},
      list: [
        {
          value: "value1",
          label: "Vaule 1",
          children: [
            {
              value: "value-1-1",
              label: "Value 1.1"
            },
            {
              value: "value-1-2",
              label: "Value 1.2"
            }
          ]
        },
        {
          value: "value2",
          label: "Vaule 2",
          children: [
            {
              value: "value-2-1",
              label: "Value 2.1"
            },
            {
              value: "value-2-2",
              label: "Value 2.2"
            }
          ]
        }
      ]
    };
  }
};

所有可能的配置双列表框的props。

list: {
  required: true,
  type: [Array, Object]
},
type: {
  type: String,
  default: "grouped"
},
lang: {
  type: String,
  default: "en_US"
},
orderBy: {
  type: String,
  default: undefined
},
placeholderSearchLeft: {
  type: [String, Boolean],
  default: false
},
placeholderSearchRight: {
  type: [String, Boolean],
  default: false
},
sortSelectedUp: {
  type: Boolean,
  default: false
},
search: {
  type: Boolean,
  default: true
},
total: {
  type: Boolean,
  default: true
},
toggleAll: {
  type: Boolean,
  default: true
},
model: {
  type: [Object, Array],
  default: undefined
}