如何在本机脚本中将RGB颜色代码转换为HTML代码

时间:2019-01-10 14:42:02

标签: nativescript angular2-nativescript

我有一个完成任务的组件,正尝试使用nativescript中的颜色选择器插件获取颜色。问题在于它以int格式(例如-899123或-989)显示结果。

我创建了一个方法并将其调用,这给了我这个结果,请参见下面的代码:

import { ColorPicker } from 'nativescript-color-picker';

let picker = new ColorPicker();
export class MyComponent extends Observable {
public Background:ColorPicker;
@Output() MessageEvent = new EventEmitter<string>();
constructor(private page: Page) {
    this.Background = picker;
}
ShowColor() {
    this.Background
  .show('#fff000', 'RGB')
  .then(result => {
      console.log('color int: '+result);
    this.input.Background = result;

  })
  .catch(err => {
    console.log(err);
  });
}
}

有帮助吗?

2 个答案:

答案 0 :(得分:0)

如文档中所述,使用Color模块将颜色值从整数转换为十六进制或rgba。

import { Color } from 'tns-core-modules/Color';

....
const color = new Color(result);
console.log(color.hex); // will return hex code
....

答案 1 :(得分:0)

太棒了,我刚刚尝试了这段代码,它为我工作了。

this.input.background = result; 
const color = new Color(this.input.background); 
this.input.background = color.hex; 
console.log(this.input.background); 

我在this.input.background中使用了结果值,因为当我尝试使用const color = new Color(result);时它显示错误。所以它与上面的方法一起工作。 非常感谢