avue

Avue logo

star fork license version

Avue.js

Avue.js 是基于 Vue 3 与 Element Plus 的数据驱动型组件库,围绕表单、表格和业务配置场景做了进一步封装。它通过统一的配置方式降低重复开发成本,让 CRUD、表单联动、数据展示和常见业务组件的搭建更直接。

适合以下场景:

特性

环境要求

以上依赖为当前包的 peerDependencies,安装 Avue 时需要一并安装。

安装

pnpm add vue element-plus @element-plus/icons-vue @smallwei/avue

或使用其他包管理器:

npm install vue element-plus @element-plus/icons-vue @smallwei/avue
yarn add vue element-plus @element-plus/icons-vue @smallwei/avue

快速开始

import { createApp } from "vue";
import ElementPlus from "element-plus";
import "element-plus/dist/index.css";
import Avue from "@smallwei/avue";
import "@smallwei/avue/lib/index.css";
import App from "./App.vue";

const app = createApp(App);

app.use(ElementPlus);
app.use(Avue, {
  size: "default",
  menuType: "text",
  locale: "zh-cn",
});

app.mount("#app");

基础用法示例:

<template>
  <avue-form v-model="form" :option="option" />
</template>

<script setup>
import { reactive, ref } from "vue";

const form = reactive({
  name: "",
  status: 1,
});

const option = ref({
  submitBtn: true,
  emptyBtn: true,
  column: [
    {
      label: "姓名",
      prop: "name",
      span: 24,
    },
    {
      label: "状态",
      prop: "status",
      type: "radio",
      dicData: [
        { label: "启用", value: 1 },
        { label: "禁用", value: 0 },
      ],
      span: 24,
    },
  ],
});
</script>

全局配置

app.use(Avue, options) 支持常见全局参数:

参数 类型 说明
size string 全局组件尺寸
calcHeight number 全局高度修正值
menuType string 操作区按钮展示类型
formOption Record<string, any> 表单默认配置
crudOption Record<string, any> CRUD 默认配置
appendToBody boolean 弹层类组件是否挂载到 body
locale string \| object 语言配置
i18n any 自定义国际化处理器
axios any 自定义请求实例
canvas object 水印默认配置
qiniu object 七牛上传默认配置
ali object 阿里云上传默认配置

组件与能力

当前仓库内置的能力主要包括:

更完整的使用方式可参考文档站和仓库示例。

文档与示例

本地开发

pnpm install
pnpm dev

常用命令:

pnpm dev
pnpm build
pnpm build:esm
pnpm build:cjs
pnpm build:browser
pnpm typecheck
pnpm gen:version

目录结构

目录 说明
src 组件与插件源码入口
packages 组件实现与业务模块
styles 样式资源
types TypeScript 类型声明
examples 本地示例与调试页面
build 构建与版本生成脚本
lib 构建产物

相关产品

参与贡献

  1. Fork 本仓库
  2. 创建功能分支
  3. 提交变更
  4. 发起 Pull Request

提交问题时请尽量提供复现步骤、运行环境、错误日志和截图,便于快速定位。

License

MIT

Copyright (c) 2017-present, Smallwei