avue-crud中el-select的使用

Avue的v2版本是一个基于element-ui低代码前端框架,Avue的v3是一个基于element-plus低代码前端框架,它使用 JSON 配置来生成页面,可以减少页面开发工作量,极大提升效率。

一、组件引入

复制代码
    <avue-crud :option="option"
                   :search.sync="search"
                   :table-loading="loading"
                   :data="data"
                   ref="crud"
                   v-model="form"
                   :permission="permissionList"
                   @row-del="rowDel"
                   @row-update="rowUpdate"
                   @row-save="rowSave"
                   :before-open="beforeOpen"
                   :page.sync="page"
                   @search-change="searchChange"
                   @search-reset="searchReset"
                   @selection-change="selectionChange"
                   @current-change="currentChange"
                   @size-change="sizeChange"
                   @refresh-change="refreshChange"
                   @on-load="onLoad">
    </avue-crud>

数据设置

复制代码
 export default {
    data() {
      return {
        option: {
          height: 'auto',
          calcHeight: 80,
          tip: false,
          searchShow: true,
          searchMenuSpan: 6,
          border: true,
          index: true,
          selection: true,
          viewBtn: true,
          dialogType: 'drawer',
          dialogClickModal: false,
          column: [], 
          group: [
            {
              label: '基础信息',
              prop: 'baseInfo',
              icon: 'el-icon-user-solid',
              column: []
            },
            {
              label: '详细信息',
              prop: 'detailInfo',
              icon: 'el-icon-s-order',
              column: []
            },
            {
              label: '职责信息',
              prop: 'dutyInfo',
              icon: 'el-icon-s-custom',
              column: []
            }
          ]
        },
      };
     }

 }

现需要给基础信息中添加一个性别选择的下拉框,数据交互可以去本地,也可从后端获取

二、交互本地数据

复制代码
   {
              label: '基础信息',
              prop: 'baseInfo',
              icon: 'el-icon-user-solid',
              column: [
                 {
                  label: "用户性别",
                  prop: "sex",
                  type: "select",
                  dicData: [
                    {
                      label: "男",
                      value: 1
                    },
                    {
                      label: "女",
                      value: 2
                    },
                    {
                      label: "未知",
                      value: 3
                    }
                  ],
                  hide: true
                }
              ]
   },

三、交互后端数据

复制代码
   {
              label: '基础信息',
              prop: 'baseInfo',
              icon: 'el-icon-user-solid',
              column: [
                {
                  label: "用户性别",
                  prop: "sex",
                  type: "select",
                  # 请求后端的路径
                  dicUrl: "/api/getSexList",
                  dicData: [],
                  props:{
                    value: "value",
                    label: "label",
                  },
              ]
   },
相关推荐
河阿里40 分钟前
HTML5标准完全教学手册
前端·html·html5
吴声子夜歌41 分钟前
Vue3——新语法
前端·javascript·vue.js
jiayong2343 分钟前
第 36 课:任务详情抽屉快捷改状态
开发语言·前端·javascript·vue.js·学习
FFF_634560231 小时前
通用 vue 页面 js 下载任何文件的方法
开发语言·前端·javascript
光影少年1 小时前
中级前端需要会的东西都有那些?
前端·学习·前端框架
琢磨先生TT1 小时前
为什么很多后台系统功能不少,看起来却还是很廉价?
前端·vue.js·设计
ekuoleung1 小时前
量化平台中的 DSL 设计与实现:从规则树到可执行策略
前端·后端
小研说技术1 小时前
实时通信对比,一场MCP协议的技术革命
前端·后端·面试
kyriewen1 小时前
React Hooks原理:为什么不能写在if里?揭开Hook的“魔法”面纱
前端·react.js·前端框架
敲代码的彭于晏1 小时前
Claude Code Token 烧得太快?这8个方案帮你立省90%!
前端·ai编程·claude