Naive UI+Vue3来实现点击按钮一键切换明暗主题的功能

这篇具有很好参考价值的文章主要介绍了Naive UI+Vue3来实现点击按钮一键切换明暗主题的功能。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

记录一下如何使用Naive UI+Vue3代码来实现一键切换明暗主题的功能。

效果如下:

Naive UI+Vue3来实现点击按钮一键切换明暗主题的功能,vue3,Naive UI,ui,javascript,vue.js,前端
Naive UI+Vue3来实现点击按钮一键切换明暗主题的功能,vue3,Naive UI,ui,javascript,vue.js,前端

Naive UI + Vue3 项目的搭建

终端下输入:

npm init vue@latest

起好项目的名称,然后一路回车即可。

cd vue3
npm install
npm run dev

至此Vue3的项目已经搭建完毕,打开http://127.0.0.1:5173/就可以看到项目的默认首页了。

安装Naive UI依赖库

npm i -D naive-ui
npm i -D vfonts

然后我们根据官方出的配置对项目进行简单的修改vue3项目下边的main.js

import { createApp } from 'vue'
import App from './App.vue'
import naive from 'naive-ui'

const app = createApp(App)
app.use(naive)
app.mount('#app')

好啦,Naive UI的依赖也安装好了。

实现点击按钮一键切换明暗主题的功能

首先,我们需要从Naive UI中导入darkTheme:

import { darkTheme } from "naive-ui";

然后,我们需要定义一个ref变量来存储按钮的标题:

const theme = ref(null); //主题变量
const themebtntit = ref("暗色主题"); //主体按钮title

接下来,我们需要定义一个函数来切换主题:

const changetheme = () => {
  theme.value = theme.value == null ? darkTheme : null;
  themebtntit.value = themebtntit.value == "亮色主题" ? "暗色主题" : "亮色主题";
};

最后,我们需要在模板中添加一个按钮,并将changetheme函数绑定到按钮的点击事件上:

<n-config-provider :theme="theme">
		<n-button @click="changetheme">
		    {{ themebtntit }}
		</n-button>
    <n-global-style />
  </n-config-provider>
</template>

这样,当用户点击按钮时,就可以实现一键切换明暗主题的功能了。

完整代码如下
项目代码仓库:
https://github.com/bosichong/vue_naive_todos文章来源地址https://www.toymoban.com/news/detail-660794.html

到了这里,关于Naive UI+Vue3来实现点击按钮一键切换明暗主题的功能的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vue3在点击菜单切换路由时,将ElementPlus UI库中el-main组件的内容滚动恢复到顶部

    功能:Vue3在点击菜单切换路由时,将页面el-main的内容滚动到顶部,布局如下,使用UI组件库为ElementPlus  在网上搜很多都是在route.js中的router.beforeEach中使用window.scrollTop(0,0) 或 window.scrollTo(0,0) 滚动,但是我使用无效,于是使用操作dom的方法,如下 可以使用 watch 函数来  监听

    2024年01月18日
    浏览(55)
  • vue3+element-plus+el-image实现点击按钮预览大图

    需求:点击某个按钮实现el-image中预览大图的效果 官方文档:以下是官方的写法,并不能达到我们的要求,官方实现的功能是点击图片达到预览大图的效果。如果你的按钮就是图片,也可以达到目前的功能 el-image-viewer组件是element官方的组件,只是文档中没有写出来,这个组

    2024年02月12日
    浏览(58)
  • vue3 ,naive-ui,嵌套modal踩坑

    今天写代码,组合使用了,n-modal,n-datatable和n-select,在n-select组件出问题,无法展开,并且报错 先展示错误的demo代码 ModuleView是抽象出来的组件,问题就出在这个抽象里面,下面是子组件代码; 很明显这是一个嵌套modal的代码。 效果图: 大伙都知道,vue2的时候template里面第一层

    2024年04月10日
    浏览(48)
  • vue+Element UI 实现动态表单(点击按钮增删表格及嵌套输入框的增删)(1)

    el-button size=“small” @click=“addTable”新增 el-button size=“small” @click=“delTable”删除 el-table ref=“table” :data=“tableDataBind.taAssessltems” tooltip-effect=“dark” border @selection-change=“selectRow” 规格: 重量: 数量: 加工费: el-button size=“mini” type=“primary” icon=“el-icon-circle-plus-ou

    2024年04月13日
    浏览(46)
  • Vue3 UI组件库对比,Naive UI、Element Plus、 Ant Design Vue

    Element Plus Naive ui Ant Design Vue 简介 element-ui Vue3版本,国内使用广泛 Vue作者推荐的Vue3ui 组件库 阿里Ant Design设计规范的Vue实现版 地址 https://github.com/element-plus/element-plus https://github.com/tusen-ai/naive-ui https://github.com/vueComponent/ant-design-vue 社区活跃度 高 中 高 ui库组件主要实现方式

    2024年01月25日
    浏览(46)
  • Vue中使用element-ui 给按钮绑定一个单击事件,实现点击按钮就弹出一个dialog对话框

    1.需求描述 想要实现点击一个按钮就弹出一个对话框,在对话框中可输入数据进行提交,在点击取消时对话框关闭 2.功能实现 1.创建按钮 在element中把找到按钮的代码放到div里 2.创建对话框 在element中找到dialog对话框对应的代码,把代码粘贴到对应的位置 3.对话框与按钮的绑定

    2024年01月18日
    浏览(72)
  • naive-ui NPopconfirm怎么用vue3的h()渲染

    先看效果 然后我先贴代码, 你们看懂的先运行下, 文章后面我教你怎么 添加这种有template,有slot插槽的组件 正文 以提示窗组件为例,官方地址为==》Naive UI 这个部分 就是下图左边部分驼峰写法 然后你vscode 键盘ctrl+鼠标左键 点击他 然后同样的方法查看ButtonProps,你就知道

    2024年02月13日
    浏览(43)
  • android实现点击按钮切换页面

    一、实现的功能 点击页面按钮,切换到下一个页面。 二、主要代码 1)第一个页面 我们需要实现点击登录按钮进行页面切换 layout中设置一个Button,仅展示按钮部分代码  登录页面LoginActivity代码, 三、启动页面 启动页面要设置为第一个页面,在AndroidMainfest.xml

    2024年02月08日
    浏览(61)
  • Vue3自定义按钮点击变色

     实现效果图: 默认选中第一个按钮,未选中按钮为粉色,点击时颜色变为红色  利用动态类名,当定义isChange数值和下标index相同时,赋予act类名,实现变色效果

    2024年02月11日
    浏览(57)
  • Vue3+Vite+Pinia+Naive后台管理系统搭建之四:Naive UI 组件库的安装和使用

    前言 如果对 vue3 的语法不熟悉的,可以移步 Vue3.0 基础入门Vue3.0 基础入门快速入门。 UI 组件请参考官网:Naive Ui 官网 为什么选择 naive ui 不继续用 element ui,因为尤大大推荐,可以尝试下,而且 naive ui 更贴近 vue3 的语法,当然易上手还是element ui 好一点。 github 开源库:Vue

    2024年02月07日
    浏览(78)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包