颜色组件
- 该组件可以设置颜色和渐变色
 
| 属性 | 值 | 备注 | 
|---|---|---|
| type | GradientColor | 显示颜色和渐变色 | 
| name | 属性名,可以自定义名称,不要超过4个字,否则会折行。 | |
| callback | string/obj | 可以直接配置回调函数名或一个对象。 当配置callback为回调函数名时,回调函数会接收一个返回值。格式:{ngvModel:'rgba(255,255,255)'} 当配置为对象时,具体用法请看尺寸组件下面的callback配置为object  | 
- 开发者如果想通过这个组件来改变外壳组件的背景颜色,可以直接设置:
 
config.json中添加
{
  ...
  "customAttributes":{
        "pro":[
          {
            "type":"GradientColor",
            "name":"背景颜色"
          }
        ],
        "con":[]
    }
  ...
}
进行调试后,在右侧属性栏可以看到增加了颜色组件。

我们没有添加入参,该组件默认控制的是自定义外壳组件的背景颜色。更改颜色后,自定义外壳组件的背景颜色发生变化。
- 如果开发者希望通过这个颜色组件,来改变自己内部的某部分的颜色,可以再配置customInput属性,增加入参值,同时要配置callback,来获取颜色值。
 
callback下的ngvModel,与customInput下的ngvModel保持一致。
- customInput下可以配置的属性:
 
| 属性 | 类型 | 值 | 备注 | 
|---|---|---|---|
| ngvModel | 字符串 | rgb(255,255,255) | 支持RGBA颜色值,十六进制颜色值#ffffff | 
{
  ...
  "customAttributes":{
        "pro":[
          {
            "type":"GradientColor",
            "name":"内部颜色",
            "customInput":{
                "ngvModel":"#007733"
            },
            "callback":{
               "ngvModel":"colorChange" 
            }
          }
        ],
        "con":[]
    }
  ...
}
main.js中
(function(){
  return{
    $data:{
        properties:null
    },
    $hooks:{
        onInit(properties){
            this.properties=properties;
        },
        onDestroy(){
        },
        setData(){
        },
        outSizeCallBack(){
        }
    },
    $methods:{
        colorChange(color){
            console.log(color)//#000000
        }
    }
  }
})

最终属性栏显示如上图所示,属性组件展示的绿色是我们传入的,改变颜色组件的颜色时,背景颜色也不会变化了。 这时需要开发者根据自己需要,在colorChange函数中添加代码,让自己想要控制的div改变颜色。