Naive UI框架安装和引入使用

Naive UI介绍:

        一个 Vue 3 组件库比较完整,主题可调,使用 TypeScript,注意,naive-ui 仅支持 Vue3。

1、 安装
  • naiva ui
// 使用 npm 安装。npm i -D naive-ui
  • 字体安
npm i -D vfonts
2、使用
  • 直接引入(推荐):你可以直接导入组件并使用它。这种情况下,只有导入的组件才会被打包。
<template><n-button>naive-ui</n-button>
</template><script>import { defineComponent } from 'vue'import { NButton } from 'naive-ui'export default defineComponent({components: {NButton}})
</script>

        如果你可以使用 setup script,你可以用下面的方式使用组件。

<template><n-button>naive-ui</n-button>
</template><script setup>import { NButton } from 'naive-ui'
</script>
全局安装(不推荐):安装全部组件

失去 tree-shaking 的能力,打包有冗余代码。如果你想全局安装但是不想安装全部组件,请参考按需引入。

import { createApp } from 'vue'
import naive from 'naive-ui'const app = createApp(App)
app.use(naive)

使用

<template><n-button>naive-ui</n-button>
</template>
  • 按需引入

Naive UI 支持 tree shaking,组件、语言、主题均可 tree-shaking。默认情况组件主题为亮色,语言为英文,无需额外导入。了解更多关于主题设定的信息,参见调整主题。

手动引入
<script>import { defineComponent } from 'vue'import { NConfigProvider, NInput, NDatePicker, NSpace } from 'naive-ui'// themeimport { createTheme, inputDark, datePickerDark } from 'naive-ui'// locale & dateLocaleimport { zhCN, dateZhCN } from 'naive-ui'export default defineComponent({components: {NConfigProvider,NInput,NDatePicker,NSpace},setup() {return {darkTheme: createTheme([inputDark, datePickerDark]),zhCN,dateZhCN}}})
</script><template><n-config-provider :theme="darkTheme" :locale="zhCN" :date-locale="dateZhCN"><n-space vertical><n-input /><n-date-picker /></n-space></n-config-provider>
</template><style>body {background: black;}
</style>
  • 自动引入
  1. 可以使用 unplugin-auto-import 插件来自动导入 API。

如果使用模板方式进行开发,可以使用 unplugin-vue-components 插件来按需自动加载组件,插件会自动解析模板中的使用到的组件,并导入组件。

// vite.config.ts
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { NaiveUiResolver } from 'unplugin-vue-components/resolvers'// https://vitejs.dev/config/
export default defineConfig({plugins: [vue(),AutoImport({imports: ['vue',{'naive-ui': ['useDialog','useMessage','useNotification','useLoadingBar']}]}),Components({resolvers: [NaiveUiResolver()]})]
})
按需全局安装组件(手动)
import { createApp } from 'vue'
import {// create naive uicreate,// componentNButton
} from 'naive-ui'const naive = create({components: [NButton]
})const app = createApp()
app.use(naive)
3、配置字体

        Naive UI 可以和 vfonts 配合,你可以简单的引入 vfonts 中的字体,包含常规字体和等宽字体。

        只需要在你 App 的入口文件导入字体,即可调整 Naive UI 的字体。

// 你 App 的入口 js 文件
// ...// 通用字体
import 'vfonts/Lato.css'
// 等宽字体
import 'vfonts/FiraCode.css'const app = createApp()
app.use(naive)// ...

注意:不同 vfonts 字体提供的字重不同,在使用 LatoOpenSans 的时候你需要全局调整 naive-ui 的字重配置。

<!-- 调整 naive-ui 的字重配置 -->
<n-config-provider :theme-overrides="{ common: { fontWeightStrong: '600' } }"><app />
</n-config-provider>

注意:具体使用请参考官网:Naive UI

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/743714.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

达梦8数据库下载安装教程(windows)

写作不易&#xff0c;欢迎点赞~ 这里多说一嘴&#xff0c;如果想从Oracle把数据迁移到达梦数据库可参考我这篇文章&#xff1a;https://blog.csdn.net/li836779537/article/details/136642028?spm1001.2014.3001.5502 达梦8安装包&#xff08;windows&#xff09; 链接&…

美国洛杉矶云服务器的亮点优势

随着云计算技术的快速发展&#xff0c;云服务器已成为企业、个人用户追求高效、稳定、安全数据存储和运算的重要选择。在众多云服务器中&#xff0c;美国洛杉矶云服务器以其独特的优势脱颖而出&#xff0c;受到越来越多用户的青睐。本文将为您科普美国洛杉矶云服务器的亮点优势…

C++提高笔记(三)---STL容器(vector、deque)

1、vector容器 1.1vector基本概念 功能&#xff1a;vector数据结构和数组非常相似&#xff0c;也称为单端数组 vector与普通数组区别&#xff1a;不同之处在于数组是静态空间&#xff0c;而vector可以动态扩展 动态扩展&#xff1a;并不是在原空间之后续接新空间&#xff0…

【PHP + 代码审计】文件包含

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】 &#x1f389;点赞➕评论➕收…

应对恶意IP攻击的有效方法

在当今数字化时代&#xff0c;网络攻击已经成为了互联网安全的重大挑战之一。恶意IP攻击是网络安全领域中的一种常见威胁&#xff0c;它可能导致数据泄露、服务中断、系统瘫痪等严重后果。因此&#xff0c;有效地应对恶意IP攻击至关重要。IP数据云将深入探讨如何应对恶意IP攻击…

精酿啤酒与日式料理的精致体验

当Fendi Club啤酒遇见日式料理&#xff0c;一场味蕾的精致盛宴就此展开。Fendi Club啤酒以其醇厚的口感和与众不同的麦香&#xff0c;为日式料理增添了别样的风味&#xff0c;而日式料理则以其精致的制作和丰富的口感&#xff0c;为啤酒带来了更多的层次感。 Fendi Club啤酒&am…

【论文笔记合集】ARIMA 非平稳过程通过差分转化为平稳过程

本文作者&#xff1a; slience_me 文章目录 ARIMA 非平稳过程通过差分转化为平稳过程文章原文具体解释详解 ARIMA 非平稳过程通过差分转化为平稳过程 文章原文 Many time series forecasting methods start from the classic tools [38, 10]. ARIMA [7, 6] tackles the foreca…

芯片公司SAP具体操作流程:从设计到生产的科技之旅

芯片公司作为现代科技产业的重要支柱&#xff0c;其运作涉及多个复杂环节。SAP作为一套企业资源计划系统&#xff0c;为芯片公司提供了从产品设计到生产制造的全方位管理支持。下面&#xff0c;我们就来详细科普一下芯片公司在SAP中的具体操作流程。 首先&#xff0c;芯片公司需…

阿里云服务器安全狗免费使用多引擎智能查杀引擎

云服务器具有按量付费、降低综合成本等诸多优势&#xff0c;受到很多企业的欢迎。 因此&#xff0c;目前使用的云服务器越来越多。 阿里云是目前云服务器中最具影响力的品牌&#xff0c;因此选择阿里云服务器的用户数量也是最多的。 那么阿里云服务器需要安装杀毒软件吗&#x…

CentOS 7安装MySQL及初始化操作教程

一、引言 MySQL是一款广泛使用的开源关系型数据库管理系统&#xff0c;适用于各种规模的应用场景。在CentOS 7系统中安装MySQL并进行初始化操作&#xff0c;可以为我们的应用程序提供稳定、可靠的数据存储服务。本文将详细介绍CentOS 7安装MySQL及初始化操作的步骤。 目录 一、…

C#使用SharpZipLib对文件进行压缩和解压

C#使用SharpZipLib对文件进行压缩和解压 使用SharpZipLib库 编写SharpZipLibHelper帮助类 using ICSharpCode.SharpZipLib.Zip;namespace SharpZipLib_Project {public class SharpZipLibHelper{/// <summary>/// 多个文件或文件夹压缩/// </summary>/// <pa…

序列化Serializable/Parcelable

定义 将一个对象转换成可存储或可传输的状态。&#xff08;对象转换成字节流的过程&#xff09; 作用 对象序列化后&#xff0c;可以在进程间、网络间进行传输&#xff0c;也可以做本地持久化存储 为什么要序列化 对于计算机来说&#xff0c;不认识对象只认识二进制。数据…

vue父子组件生命周期

父子组件的生命周期是一个嵌套的过程 渲染的过程 父beforeCreate->父created->父beforeMount->子beforeCreate->子created->子beforeMount->子mounted->父mounted 子组件更新过程 父beforeUpdate->子beforeUpdate->子updated->父updated 父组件更…

行业认可 | 海云安上榜《2024年网络与信息安全行业全景图》多个领域

近日&#xff0c;深圳市网络与信息安全行业协会正式发布《2024年网络与信息安全行业全景图》。海云安凭借过硬的技术实力及成熟的网络与信息安全产品及服务获得行业认可&#xff0c;入围6大类目共计17项细分领域。包括&#xff1a; 业务安全&#xff08;软硬件开发安全、人工智…

MFC中字符串string类型和CString类型互转方法

在Microsoft Foundation Classes (MFC)中&#xff0c;CString是一个非常方便的类&#xff0c;用于处理C风格的字符串。有时&#xff0c;你可能需要在MFC的CString和C标准库中的std::string之间进行转换。下面是如何在两者之间进行转换的方法&#xff1a; CString转std::string…

C++向函数传递函数

函数指针的定义格式为&#xff1a; <函数返回类型> (*指针变量)(<函数形参列表>) 例如&#xff1a; 下面定义了一个函数指针变量fp: double (*fp)(int);这意味着fp可以指向返回类型为double,参数类型为int的任何函数 比如&#xff1a; double func(int x){...}获…

如何配置Log4j以便将日志信息输出到文件,并指定日志文件的格式?请解释Log4j中的PatternLayout,并给出一个常用的日志格式模式。

如何配置Log4j以便将日志信息输出到文件&#xff0c;并指定日志文件的格式&#xff1f; 配置Log4j以将日志信息输出到文件并指定日志文件的格式&#xff0c;通常涉及创建一个配置文件&#xff08;如log4j.properties或log4j2.xml&#xff09;&#xff0c;其中定义了Log4j的行为…

前端项目,个人笔记(一)【定制化主题 + 路由设计】

目录 1、项目准备 1.1、项目初始化 1.2、elementPlus按需引入 注&#xff1a;使用cnpm安装elementplus及两个插件&#xff0c;会报错&#xff1a;vueelement-plus报错TypeError: Cannot read properties of null (reading isCE ) &#xff0c;修改&#xff1a; 测试&#…

欧科云链做客Google Cloud与WhalerDAO专题论坛,畅谈Web3数据机遇

3月10日&#xff0c;由Google Cloud、WhalerDAO和baidao data主办&#xff0c;以Web3AI 2024 DATA POWER为主题的分享会在北京中关村举行。欧科云链高级研究员Jason Jiang受邀参加活动&#xff0c;带来“从链上数据发掘Web3时代的无限机遇”的主题分享。 Web3.0核心要素始终是链…

你不知道的 git 神器

有没有这种困惑&#xff0c;就是在一个分支上开发一堆功能&#xff0c;提交了很多 commit&#xff0c;但是突然上级告诉你&#xff0c;只上一个功能&#xff0c;你是不是束手无策&#xff0c;需要在这个分支上重新检出新分支&#xff0c;然后把不上的代码全部删掉。等后续需要的…