当前位置: 首页 > news >正文

Vue-color:Vue.js 专业颜色选择器组件库 – 支持Vue2/3,TypeScript,暗色主题

简介

Vue-color 是一个专为 Vue.js 设计的颜色选择器组件库,提供了多种风格的颜色选择器组件。它支持 Vue 2.7 和 Vue 3,具有 TypeScript 支持、SSR 兼容性和暗色主题支持。

特性

  • 多种颜色选择器 – 提供 Chrome、Sketch、Photoshop 等多种风格
  • Vue 2.7/3 兼容 – 同时支持 Vue 2.7 和 Vue 3
  • 模块化设计 – 按需导入,支持 Tree Shaking
  • TypeScript 支持 – 完整的类型定义
  • 暗色主题 – 内置暗色模式支持
  • SSR 友好 – 兼容 Nuxt 等 SSR 框架

安装

# 使用 npm
npm install vue-color# 使用 yarn
yarn add vue-color# 使用 pnpm
pnpm add vue-color

快速开始

1. 导入样式

// main.ts
import { createApp } from "vue";
import App from "./App.vue";
import "vue-color/style.css";createApp(App).mount("#app");

2. 基本使用

<template><div class="color-picker-demo"><h3>选择的颜色: {{ color }}</h3><ChromePicker v-model="color" /></div>
</template><script setup lang="ts">
import { ChromePicker } from "vue-color";const color = defineModel({default: "#68CCCA",
});
</script>

组件介绍

ChromePicker

Chrome 风格的颜色选择器,功能最全面。

<template><ChromePickerv-model="color":disable-alpha="false":disable-fields="false"/>
</template><script setup lang="ts">
import { ChromePicker } from "vue-color";const color = defineModel({default: "#ff6b6b",
});
</script>

SketchPicker

Sketch 风格的颜色选择器,适合设计师使用。

<template><SketchPickerv-model="color":preset-colors="presetColors":disable-alpha="false"/>
</template><script setup lang="ts">
import { SketchPicker } from "vue-color";const color = defineModel({default: "#4ecdc4",
});const presetColors = ["#D0021B","#F5A623","#F8E71C","#8B572A","#7ED321","#BD10E0","#9013FE","#4A90E2","#50E3C2","#B8E986",
];
</script>

CompactPicker

紧凑型颜色选择器,占用空间小。

<template><CompactPicker v-model="color" :colors="customColors" />
</template><script setup lang="ts">
import { CompactPicker } from "vue-color";const color = defineModel({default: "#ff9ff3",
});const customColors = ["#f44336","#e91e63","#9c27b0","#673ab7","#3f51b5","#2196f3","#03a9f4","#00bcd4","#009688","#4caf50",
];
</script>

SwatchesPicker

色板选择器,提供预设的颜色组合。

<template><SwatchesPicker v-model="color" :height="200" />
</template><script setup lang="ts">
import { SwatchesPicker } from "vue-color";const color = defineModel({default: "#ff5722",
});
</script>

TwitterPicker

Twitter 风格的颜色选择器。

<template><TwitterPicker v-model="color" />
</template><script setup lang="ts">
import { TwitterPicker } from "vue-color";const color = defineModel({default: "#ff5722",
});
</script>

高级用法

暗色主题

<template><div :class="{ dark: isDark }"><button @click="toggleTheme">切换主题</button><ChromePicker v-model="color" /></div>
</template><script setup lang="ts">
import { ChromePicker } from "vue-color";
import { ref } from "vue";const color = defineModel({default: "#68CCCA",
});const isDark = ref(false);const toggleTheme = () => {isDark.value = !isDark.value;document.documentElement.classList.toggle("dark", isDark.value);
};
</script>

SSR 兼容

<template><ClientOnly><ChromePicker /></ClientOnly>
</template><script setup lang="ts">
import { ClientOnly } from "#components";
import { ChromePicker } from "vue-color";
</script>

Vue 2.7 使用

<template><ChromePicker v-model="color" />
</template><script setup>
import { ref } from "vue";
import { ChromePicker } from "vue-color/vue2";const color = ref("#5c8f94");
</script>

API 参考

通用 Props

属性类型默认值描述
v-modelstring | object颜色值,支持多种格式
v-model:tinyColortinycolortinycolor 实例
disableAlphabooleanfalse是否禁用透明度
disableFieldsbooleanfalse是否禁用输入框

颜色格式支持

Vue-color 支持多种颜色格式:

// 十六进制
'#ff6b6b'
'#ff6b6bff'// RGB
'rgb(255, 107, 107)'
'rgba(255, 107, 107, 0.8)'// HSL
'hsl(0, 100%, 70%)'
'hsla(0, 100%, 70%, 0.8)'// 对象格式
{ r: 255, g: 107, b: 107, a: 1 }

总结

Vue-color 是一个功能强大且易于使用的颜色选择器库,提供了多种风格的选择器组件。通过本文档的介绍,您可以快速上手并在项目中使用这些组件。无论是简单的颜色选择还是复杂的颜色管理需求,Vue-color 都能满足您的要求。

 Vue-color:Vue.js 专业颜色选择器组件库 - 支持Vue2/3,TypeScript,暗色主题 - 高质量源码分享平台-免费下载各类网站源码与模板及前沿技术分享


文章转载自:

http://Up0A51Ck.pshpx.cn
http://XfbCOVEg.pshpx.cn
http://FMlhyaBT.pshpx.cn
http://nNHEMyo8.pshpx.cn
http://ClrR5iw7.pshpx.cn
http://fN7aafyQ.pshpx.cn
http://fPwjsEMF.pshpx.cn
http://98kTegnh.pshpx.cn
http://VpPvdvka.pshpx.cn
http://omeKWdd9.pshpx.cn
http://WCsgnM1N.pshpx.cn
http://WDo9xmL1.pshpx.cn
http://Y222CiBc.pshpx.cn
http://mu4RNeTu.pshpx.cn
http://EKNnfu9y.pshpx.cn
http://x4lOZx43.pshpx.cn
http://CsIBoyt2.pshpx.cn
http://KAjIBAoQ.pshpx.cn
http://xIdG0pq8.pshpx.cn
http://OIBNDQEC.pshpx.cn
http://ezNHTxBf.pshpx.cn
http://pTHlvXVg.pshpx.cn
http://ldztpgbb.pshpx.cn
http://KZoZPgMH.pshpx.cn
http://WIqDf7qI.pshpx.cn
http://5TzerziE.pshpx.cn
http://46FLGbOM.pshpx.cn
http://ex6bMGPg.pshpx.cn
http://9aVgxBJe.pshpx.cn
http://DpdpmP1x.pshpx.cn
http://www.dtcms.com/a/384962.html

相关文章:

  • IntelliJ IDEA 的 Git 功能
  • 【更新至2024年】2009-2024年上市公司排污环保费用数据
  • Nmap图形化扫描工具 | 集成资产定期监控功能
  • 讲一讲cot蒸馏以及grpo的方式训练模型
  • 面试之Java基础
  • LeetCode 3325.字符至少出现K次的子字符串 I
  • 【Linux命令从入门到精通系列指南】cp 命令详解
  • Oracle重做日志(Redo Log):数据一致性的“守护者“
  • Linux的生产者消费者模型
  • 深度学习基础、pytorch使用①
  • 国产化PDF处理控件Spire.PDF教程:在 ASP.NET Core 中创建 PDF的分步指南
  • 某村通信网络改造:从痛点到解决方案的全景分析
  • Elastic APM 入门指南:快速设置应用性能监控
  • 流式响应的demo , 前端markdown格式显示, 打字机效果展示
  • 【免费体验】旗讯 OCR手写识别:破解工厂数据处理痛点,实现从 “人工录入” 到 “AI读单” 的升级
  • 远程开机wakeonlan
  • 健康有益:车载健康化系统推动智能汽车健康管理新变革
  • JavaWeb--day6--MySQL(补漏)
  • 手机群控平台的智能管控技术深度解析
  • 什么是手持采集终端PDA?智慧移动工作的数字基石!
  • C语言中的递归问题——爬楼梯问题
  • LeetCode:2.字母异位词分组
  • 计算机视觉案例分享之实时文档扫描
  • 提升PDF处理效率,Stirling-PDF带你探索全新体验!
  • 【React】闭包陷阱
  • 4.RocketMQ集群高级特性
  • 周选择日历组件
  • Golang引用类型
  • Go的Gob编码介绍与使用指南
  • Golang语言入门篇001_Golang简介