export default function hexToRgb(hex: string, a = 1) {// Hex(十六进制)、Dec(十进制)、Octal(八进制)、Bin(二进制)const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);if (result) {const colorObj = {r: parseInt(result[1], 16),g: parseInt(result[2], 16),b: parseInt(result[3], 16),a,};return `rgba(${colorObj.r},${colorObj.g},${colorObj.b},${colorObj.a})`;}return hex;
}
参数 #16d6ce(需要改变的色号) 1至0(0.8,0.9都可以 结果色号是原色号的多少浓度)
适用场景: 项目通过 跳转链接 得到项目的主题色 此方法可以将主题色号处理为 多种 透明度的 不同颜色 配合主题使用
调用
document.documentElement.style.setProperty('--color-master-90', hexToRgb(`#${query.theme_color}`, 0.9));