element的下拉框封装

javascript 复制代码
<!-- 仓位 -->
<template>
  <el-select
    clearable
    :value="value || []"
    class="ele-fluid"
    :filterable="true"
    placeholder="仓位"
    @input="updateValue"
  >
    <el-option
      v-for="item in data"
      :key="item.id"
      :value="item.id"
      :label="item.storageName"
    />
  </el-select>
</template>

<script>
  // import { listStorage } from '@/api/basic/storage/index';
  import { listStorage } from '@/api/basic/storage';
  export default {
    props: {
      // 选中的数据(v-model)
      value: [Array, String, Number],
      // 提示信息
      placeholder: {
        type: String,
        default: '请选择转入仓位'
      }
    },
    data() {
      return {
        //班次数据
        data: []
      };
    },
    created() {
      listStorage({})
        .then((list) => {
          this.loading = false;
          this.data = list;
          //   this.data = this.$util.toTreeData({
          //     data: list,
          //     idField: 'organizationId',
          //     parentIdField: 'parentId'
          //   });
          console.log(this.data);
          // this.$nextTick(() => {
          //   this.onNodeClick(this.data[0]);
          // });
        })
        .catch((e) => {
          this.loading = false;
          this.$message.error(e.message);
        });
    },
    methods: {
      /* 更新选中数据 */
      updateValue(value) {
        this.$emit('input', value);
      }
    }
  };
</script>

@input="updateValue"

:value="value || []"

相关推荐
卸任2 分钟前
Electron霸屏功能总结
前端·react.js·electron
fengci.2 分钟前
ctfshow黑盒测试前半部分
前端
忆琳4 分钟前
Vue3 优雅解决单引号注入问题:自定义指令 + 全局插件双方案
vue.js·element
忆琳10 分钟前
Vue3 全局自动大写转换:一个配置,全站生效
javascript·element
喵个咪13 分钟前
Headless 架构优势:内容与展示解耦,一套 API 打通全端生态
前端·后端·cms
小江的记录本17 分钟前
【JEECG Boot】 JEECG Boot——数据字典管理 系统性知识体系全解析
java·前端·spring boot·后端·spring·spring cloud·mybatis
喵个咪20 分钟前
传统 CMS 太笨重?试试 Headless 架构的 GoWind,轻量又强大
前端·后端·cms
chenjingming66621 分钟前
jmeter导入浏览器上按F12抓的数据包
前端·chrome·jmeter
张元清21 分钟前
不用 Server Components 也能做 React 流式 SSR —— 实战指南
前端·javascript·面试