前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vue3常用的UI框架

Vue3常用的UI框架

作者头像
码客说
发布2024-08-03 09:28:58
1490
发布2024-08-03 09:28:58
举报
文章被收录于专栏:码客

前言

基于Vue的UI框架比较推荐的有

  • Ant Design Vue
  • iView
  • Element Plus(之前叫Element UI)

这三者中Ant Design VueiView使用的是Less。

Element Plus使用的是Sass。

Ant Design Vue

https://www.antdv.com/docs/vue/getting-started-cn

概要

CSS预处理器为Less。 示例为TS+组合式API。

Ant Design 和 iView都是不错的UI框架,这里更推荐使用Ant Design,最大的原因是:

虽然Ant Design 和 iView都是使用的Less,但是Ant Design提供了一种新的设置主题的方式。

安装和引用

代码语言:javascript
复制
npm i --save ant-design-vue@4.x

引用

代码语言:javascript
复制
import {createApp} from 'vue'
import {createPinia} from 'pinia'

import App from './App.vue'
import router from './router'

import Antd from 'ant-design-vue';
import 'ant-design-vue/dist/reset.css';

const app = createApp(App)

app.use(createPinia())
app.use(router)
app.use(Antd)

app.mount('#app')

修改主题

https://www.antdv.com/docs/vue/customize-theme-cn

修改主题变量

通过在 ConfigProvider 中传入 theme,可以配置主题。

在升级 v4 后,将默认使用 v4 的主题,以下是将配置主题示例:

代码语言:javascript
复制
<template>
  <a-config-provider
    :theme="{
      token: {
        colorPrimary: '#00b96b',
      },
    }"
  >
    <a-button />
  </a-config-provider>
</template>

iView

https://www.iviewui.com/view-ui-plus/guide/introduce

概要

CSS预处理器为Less。 示例为JS+选项式API。

安装和引用

安装

代码语言:javascript
复制
npm install view-ui-plus --save

main.js中引用

代码语言:javascript
复制
import "@/assets/css/_common.scss"

import {createApp} from 'vue'
import {createPinia} from 'pinia'

import App from './App.vue'
import router from './router'

import ViewUIPlus from 'view-ui-plus'
import 'view-ui-plus/dist/styles/viewuiplus.css'

const app = createApp(App)

app.use(createPinia())
app.use(router)
app.use(ViewUIPlus)

app.mount('#app')

自定义主题

如果你的项目使用了 webpack/vite 工程,可以通过变量覆盖的方式来实现主题定制。

创建文件/assets/css/my-theme/index.less

并写入下面内容:

代码语言:javascript
复制
@import '~view-ui-plus/src/styles/index.less';

// Here are the variables to cover, such as:
@primary-color: #FA7E31;

完整的变量列表可以查看 默认样式变量

然后在入口文件 main.js 内导入这个 less 文件即可:

代码语言:javascript
复制
import '@/assets/css/my-theme/index.less';

Element Plus

https://element-plus.org/zh-CN/guide/design.html

概要

CSS预处理器为Scss。 示例为TS+组合式API。

安装和使用

代码语言:javascript
复制
npm install element-plus --save

使用

代码语言:javascript
复制
// main.ts
import { createApp } from 'vue'
import App from './App.vue'

import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

const app = createApp(App)

app.use(ElementPlus)
app.mount('#app')

自定义主题

https://element-plus.org/zh-CN/guide/theming.html

创建一个 styles/element/index.scss 文件来合并你的变量和 element-plus 的变量。

代码语言:javascript
复制
@forward 'element-plus/theme-chalk/src/common/var.scss' with (
  $colors: (
    'primary': (
      'base': green,
    ),
  ),
);

引用的地方修改如下

代码语言:javascript
复制
import { createApp } from 'vue'
import App from './App.vue'

import './styles/element/index.scss'
import ElementPlus from 'element-plus'

const app = createApp(App)
app.use(ElementPlus)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-08-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • Ant Design Vue
    • 安装和引用
      • 修改主题
      • iView
        • 安装和引用
          • 自定义主题
          • Element Plus
            • 安装和使用
              • 自定义主题
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档