Naive Ultra:中后台 Naive UI 增强组件库

Naive Ultra:更优雅的 Naive UI 增强组件库

Naive Ultra 是基于 Naive UI 的增强型组件库,专为中后台场景设计,助力企业级应用高效开发。

项目简介

Naive Ultra 是在 Naive UI 基础上进行扩展和增强的组件库,旨在为开发者提供更丰富、更实用的业务组件和工具函数,帮助中后台项目快速落地。

  • 🌈 业务组件:涵盖表单、表格、操作栏等常用场景
  • 按需引入:支持 Vite/Webpack 自动导入
  • 🛠️ 类型支持:TypeScript 友好
  • 📦 开箱即用:与 Naive UI 无缝衔接

安装方式

推荐使用 pnpm 进行安装:

bash 复制代码
pnpm install --save naive-ultra

也可以使用 yarn:

bash 复制代码
yarn add naive-ultra

快速上手

全局引入

适合需要全量使用组件的场景:

js 复制代码
import NaiveUltra from 'naive-ultra'
import { createApp } from 'vue'
import App from './App.vue'

const app = createApp(App)
app.use(NaiveUltra)

按需引入(推荐)

推荐使用 unplugin-vue-componentsunplugin-auto-import 插件,实现组件和 API 的自动按需导入,极大减少打包体积。

安装插件
bash 复制代码
npm install -D unplugin-vue-components unplugin-auto-import
Vite 配置示例
ts 复制代码
import NaiveUltraImports from 'naive-ultra/imports'
import NaiveUltraResolver from 'naive-ultra/resolver'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { defineConfig } from 'vite'

export default defineConfig({
  plugins: [
    AutoImport({
      imports: [NaiveUltraImports()],
    }),
    Components({
      resolvers: [NaiveUltraResolver()],
    }),
  ],
})
Webpack 配置示例
js 复制代码
const NaiveUltraImports = require('naive-ultra/imports')
const NaiveUltraResolver = require('naive-ultra/resolver')
const AutoImport = require('unplugin-auto-import/webpack')
const Components = require('unplugin-vue-components/webpack')

module.exports = {
  plugins: [
    AutoImport({
      imports: [NaiveUltraImports()],
    }),
    Components({
      resolvers: [NaiveUltraResolver()],
    }),
  ],
}

组件示例

以表单为例,Naive Ultra 提供了更贴合业务的高级用法。下面的代码完全参考官方示例:

html 复制代码
<script lang="ts" setup>
import { defineForm } from 'naive-ultra'
import { ref } from 'vue'

const email = ref('')

const form = defineForm({
  brandNum: {
    type: 'input',
    props: {},
    placeholder: 'Please input brand number',
    value: '',
  },
  email: {
    type: 'input',
    placeholder: 'Please input email',
    value: email,
  },
  time: { type: 'date-picker' },
})
</script>

<template>
  <nu-form :is="form" />
  <pre>{{ JSON.stringify(form.dataTrans, null, 2) }}</pre>
</template>

适用场景

  • 需要更丰富业务组件的中后台项目
  • 希望提升开发效率、减少重复造轮子的团队
  • 追求极致按需引入、优化打包体积的 Vue3 项目

相关链接

结语

Naive Ultra 是我在前公司开发的集成框架,现在开源出来了,以前它帮了我很多,让我能在短时间快速重构一整个中后台系统。

另外,说实话,我是比较懒得写文章的,所以上面都是用 AI 生成的,怪不好意思的,建议直接去看官方文档。如果觉得项目不错,那就 Star 支持一下吧。

相关推荐
layman05281 小时前
webpack5 css-loader:从基础到原理
前端·css·webpack
半桔1 小时前
【前端小站】CSS 样式美学:从基础语法到界面精筑的实战宝典
前端·css·html
AI老李1 小时前
PostCSS完全指南:功能/配置/插件/SourceMap/AST/插件开发/自定义语法
前端·javascript·postcss
_OP_CHEN1 小时前
【前端开发之CSS】(一)初识 CSS:网页化妆术的终极指南,新手也能轻松拿捏页面美化!
前端·css·html·网页开发·样式表·界面美化
啊哈一半醒1 小时前
CSS 主流布局
前端·css·css布局·标准流 浮动 定位·flex grid 响应式布局
PHP武器库1 小时前
ULUI:不止于按钮和菜单,一个专注于“业务组件”的纯 CSS 框架
前端·css
电商API_180079052471 小时前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫
晓晓莺歌1 小时前
vue3某一个路由切换,导致所有路由页面均变成空白页
前端·vue.js
Up九五小庞2 小时前
开源埋点分析平台 ClkLog 本地部署 + Web JS 埋点测试实战--九五小庞
前端·javascript·开源
qq_177767372 小时前
React Native鸿蒙跨平台数据使用监控应用技术,通过setInterval每5秒更新一次数据使用情况和套餐使用情况,模拟了真实应用中的数据监控场景
开发语言·前端·javascript·react native·react.js·ecmascript·harmonyos