UI 框架:nav-ui&uni-ui&vant

简介: 本文档介绍了`nav-ui`、`uni-ui`和`vant`三个UI库的基本使用方法,包括图标、表格和树的使用示例,以及如何在项目中安装和配置这些UI组件。对于`nav-ui`,详细说明了图标组件的安装与使用,包括本地图标和第三方图标库的集成方式。`uni-ui`部分则重点讲解了CSS的使用方法。最后,`vant`部分提供了从项目创建到组件安装的具体步骤,以及如何将下载的组件正确地集成到项目中。

引言

在现代Web开发中,用户界面(UI)的设计与交互体验对应用的成功至关重要。为了提升开发效率和用户体验,各种UI组件库应运而生,成为开发者的重要工具。本文档将重点介绍三个流行的UI库——nav-ui、uni-ui和vant,并提供它们的基本使用方法和示例。

我们将首先探讨nav-ui,深入了解其图标组件的安装与使用,包括如何整合本地图标和第三方图标库,以便开发者能够轻松地定制自己的项目。接下来,uni-ui部分将重点讲解CSS的应用,帮助开发者充分利用该库提供的样式和布局功能。最后,我们将详细介绍vant,从项目创建到组件安装,逐步指导您如何将其集成到您的项目中。

通过这篇文章,您将获得对这三个UI库的全面理解,掌握它们的基本操作方法,为构建更具吸引力和功能性的用户界面打下坚实基础。

nav-ui

图标的简单使用

使用图标

npm i -D @vicons/ionicons5

之后就可以使用了

<n-icon size="40">
    <game-controller-outline />
  </n-icon>

路由里面的icon绑定为

icon: 'fluent:access-time-20-regular',
fluent  为前缀

在页面使用

<!--  </n-space>-->
  <n-icon size="40">
    <Checkmark16Filled />
  </n-icon>
import Checkmark16Filled from '@vicons/fluent/Checkmark16Filled'
用这个可以绑定
      <svg-icon icon="mdi:emoticon"/>
<icon-select v-model:value="selectValue" :icons="icons" />
          import { icons } from './icons';
//  选值
const selectValue = ref('');

本地图标

在src/assets/svg-icon文件夹下的svg文件,通过在template里面以 icon-local-{文件名} 直接渲染, 其中icon-local为.env文件里的 VITE_ICON_LOCAL_PREFIX
将本地的图标存为一个数组
const localIcons = ['custom-icon', 'activity', 'at-sign', 'cast', 'chrome', 'copy', 'wind'];
然后使用
<div v-for="(fileName, index) in localIcons" :key="index" class="mt-5px flex-x-center">
          <svg-icon :local-icon="fileName" class="text-30px text-primary" />
        </div>
<icon-local-cast class="text-20px text-error" />

表格简单使用

<template>
    <div>
<!--    <n-data-table-->
<!--        :scroll-x="1800"-->
<!--        :columns="columns"-->
<!--        :data="data"-->
<!--        :row-key="rowKey"-->
<!--        default-expand-all-->
<!--    />-->
    <n-button @click="test">click me</n-button>
    </div>
</template>
<script lang="ts" setup>
import type { DataTableColumns } from 'naive-ui'
// import {fetchAllRoutes} from "@/service";
import {useRouterPush} from "@/composables";
import axios  from "axios";
import {onMounted} from "vue";
const useRouter = useRouterPush();
onMounted(()=>{
    axios({
                url:"http://192.168.100.152:10010/getRouters"
        })
})
const test = ()=>{
    // fetchAllRoutes().then(res=>{
    //  console.log(res)
    // })
    useRouter.toHome()
}
type RowData = {
    name: string
    index: string
    children?: RowData[]
}
const data: RowData[] = [
    {
        name: '07akioni',
        index: '07',
        children: [
            {
                name: '08akioni',
                index: '08',
                children: [
                    {
                        name: '09akioni',
                        index: '09'
                    },
                    {
                        name: '10akioni',
                        index: '10'
                    }
                ]
            }
        ]
    },
    {
        name: '11akioni',
        index: '11'
    }
]
const columns: DataTableColumns<RowData> = [
    {
        type: 'selection'
    },
    {
        title: 'name',
        key: 'name'
    },
    {
        title: 'index',
        key: 'index'
    }
]
const rowKey=(row: RowData)  => {
    return row.index;
}
</script>

树的使用

别名
                        label-field="name"
                                    key-field="parentId"
   children-field="whateverChildren"


uni-ui

使用css

https://uniapp.dcloud.net.cn/component/uniui/uni-sass.html


vant

先创建好项目

之后去项目的目录打开cmd

然后在cmd 中执行

然后在cmd 中执行 命令行
npm init -y
下载
npm i @vant/weapp -S --production


在项目的根路径下,创建 wxcomponents 目录,并将依赖项(node_modules)中@vant文件夹下的dist复制到wxcomponents,并修改文件夹名为vant;(主要是为了方便查看和引用)

创建文件夹然后放入信息

相关文章
|
2天前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1517 4
|
29天前
|
弹性计算 人工智能 架构师
阿里云携手Altair共拓云上工业仿真新机遇
2024年9月12日,「2024 Altair 技术大会杭州站」成功召开,阿里云弹性计算产品运营与生态负责人何川,与Altair中国技术总监赵阳在会上联合发布了最新的“云上CAE一体机”。
阿里云携手Altair共拓云上工业仿真新机遇
|
5天前
|
人工智能 Rust Java
10月更文挑战赛火热启动,坚持热爱坚持创作!
开发者社区10月更文挑战,寻找热爱技术内容创作的你,欢迎来创作!
492 19
|
2天前
|
存储 SQL 关系型数据库
彻底搞懂InnoDB的MVCC多版本并发控制
本文详细介绍了InnoDB存储引擎中的两种并发控制方法:MVCC(多版本并发控制)和LBCC(基于锁的并发控制)。MVCC通过记录版本信息和使用快照读取机制,实现了高并发下的读写操作,而LBCC则通过加锁机制控制并发访问。文章深入探讨了MVCC的工作原理,包括插入、删除、修改流程及查询过程中的快照读取机制。通过多个案例演示了不同隔离级别下MVCC的具体表现,并解释了事务ID的分配和管理方式。最后,对比了四种隔离级别的性能特点,帮助读者理解如何根据具体需求选择合适的隔离级别以优化数据库性能。
179 1
|
8天前
|
JSON 自然语言处理 数据管理
阿里云百炼产品月刊【2024年9月】
阿里云百炼产品月刊【2024年9月】,涵盖本月产品和功能发布、活动,应用实践等内容,帮助您快速了解阿里云百炼产品的最新动态。
阿里云百炼产品月刊【2024年9月】
|
21天前
|
存储 关系型数据库 分布式数据库
GraphRAG:基于PolarDB+通义千问+LangChain的知识图谱+大模型最佳实践
本文介绍了如何使用PolarDB、通义千问和LangChain搭建GraphRAG系统,结合知识图谱和向量检索提升问答质量。通过实例展示了单独使用向量检索和图检索的局限性,并通过图+向量联合搜索增强了问答准确性。PolarDB支持AGE图引擎和pgvector插件,实现图数据和向量数据的统一存储与检索,提升了RAG系统的性能和效果。
|
9天前
|
Linux 虚拟化 开发者
一键将CentOs的yum源更换为国内阿里yum源
一键将CentOs的yum源更换为国内阿里yum源
448 5
|
7天前
|
存储 人工智能 搜索推荐
数据治理,是时候打破刻板印象了
瓴羊智能数据建设与治理产品Datapin全面升级,可演进扩展的数据架构体系为企业数据治理预留发展空间,推出敏捷版用以解决企业数据量不大但需构建数据的场景问题,基于大模型打造的DataAgent更是为企业用好数据资产提供了便利。
313 2
|
23天前
|
人工智能 IDE 程序员
期盼已久!通义灵码 AI 程序员开启邀测,全流程开发仅用几分钟
在云栖大会上,阿里云云原生应用平台负责人丁宇宣布,「通义灵码」完成全面升级,并正式发布 AI 程序员。
|
25天前
|
机器学习/深度学习 算法 大数据
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析
2024“华为杯”数学建模竞赛,对ABCDEF每个题进行详细的分析,涵盖风电场功率优化、WLAN网络吞吐量、磁性元件损耗建模、地理环境问题、高速公路应急车道启用和X射线脉冲星建模等多领域问题,解析了问题类型、专业和技能的需要。
2608 22
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析