colorSwitch 颜色转换

RGB转十六进制Hex

rgbToHex(rgb)

该函数可以将一个RGB颜色值转换成一个Hex的十六进制颜色值

  • rgb RGB颜色值,如rgb(230, 231, 233)
  1. export default{
  2. data() {
  3. return {
  4. rgb: 'rgb(13, 145, 20)'
  5. }
  6. },
  7. onLoad() {
  8. console.log(this.$u.rgbToHex(this.rgb));
  9. }
  10. }

十六进制Hex转RGB

hexToRgb(hex)

该函数可以将一个Hex的十六进制颜色值转换成一个RGB颜色值

  • hex HEx颜色值,如#0afdce
  1. export default{
  2. data() {
  3. return {
  4. hex: '#0afdce'
  5. }
  6. },
  7. onLoad() {
  8. console.log(this.$u.hexToRgb(this.hex));
  9. }
  10. }

颜色渐变

colorGradient(startColor, endColor, step)

该函数实现两个颜色值之间等分取值,返回一个数组,元素为十六进制形式的颜色值,数组长度为step值。 例如:colorGradient(‘rgb(250, 250, 250)’, ‘rgb(252, 252, 252)’, 3),得到的结果为[“#fafafa”, “#fafafa”, “#fbfbfb”]

  • startColor 开始颜色值,可以是HEX或者RGB颜色值,如#0afdce或者rgb(120, 130, 150)
  • endColor 结束颜色值,可以是HEX或者RGB颜色值,如#0afdce或者rgb(120, 130, 150)
  • step 均分值,把开始值和结束值平均分成多少份
  1. export default{
  2. onLoad() {
  3. console.log(this.$u.colorGradient('rgb(250,250,250)', 'rgb(252,252,252)', 3));
  4. // 结果为:["#fafafa", "#fafafa", "#fbfbfb"]
  5. }
  6. }