自定义颜色选择功能

开箱即用

1.效果:

2.代码

复制代码
<template>
	<div class="snowy-color-picker" @click="forceResize">
		<color-picker v-bind="$attrs" format="hex" :pureColor="props.value" @update:pureColor="update" />
	</div>
</template>

<script setup>
	import { ColorPicker } from 'vue3-colorpicker'
	import 'vue3-colorpicker/style.css'

	const emit = defineEmits(['update:value'])

	const props = defineProps({
		value: {
			type: String,
			default: '#1677FF'
		}
	})

	const forceResize = () => {
		window.dispatchEvent(new Event('resize'))
	}

	const update = (val) => {
		showTxt(val)
		emit('update:value', val)
	}
	onMounted(() => {
		showTxt(props.value)
	})
	const showTxt = (val) => {
		const currentColor = document.querySelector('.current-color')
		if (currentColor) {
			currentColor.textContent = val
		}
	}
</script>

<style lang="less">
	.snowy-color-picker {
		.vc-color-wrap {
			width: auto;
		}
		.current-color {
			color: #fff;
			padding: 0 10px;
		}
	}
</style>

使用:

复制代码
<color-picker v-model:value="formData.color" />
相关推荐
CoderYanger3 分钟前
Java EE 进阶:4.Spring Web MVC 入门(第一弹)
java·开发语言·前端·spring·面试·java-ee·mvc
用户2788607285673 分钟前
fallback 会盖掉平台提示词:system、空数组和 systemAppend 的差别
前端·后端
peach5 分钟前
大模型和传统编程:同为程序,差异不在硬件,在"逻辑从哪来"
前端
ALONE阿龙太原微码15 分钟前
微信小程序包体积优化:2MB 到 400KB 的实操记录
前端
估值探索者17 分钟前
【Python量化选股流水线 #04】选股器好不好用?「昨日候选→今日表现」回看验收
开发语言·python·股票数据·股票数据api接口
掘金挖土17 分钟前
前端手摸手跑路之 AI 应用开发(十一)
前端·后端
创了么OPC19 分钟前
小程序能收款了,对公户还没开?独立开发者的交付闭环踩坑②
前端·微信小程序
IT_陈寒20 分钟前
Vue动态组件缓存的坑你踩过了吗?
前端·人工智能·后端
szp200524 分钟前
Cache API 会丢掉 URL 里的 #:我的 9 个模型分块一直写在同一条缓存上
javascript·浏览器
寂寞狼牙冷33 分钟前
封装fetch替换axios
前端