<!--
 * @Author: your name
 * @Date: 2021-09-22 10:48:46
 * @LastEditTime: 2022-08-03 11:11:37
 * @LastEditors: pangkangrong-123 973534209@qq.com
 * @Description: In User Settings Edit
 * @FilePath: \fe-component-lib\component.md
-->


### **my-component 调用方式**
```
<template>
  <div class="">
    <component
          :is="getComponentType(computedConfig)"
          v-model="computedConfig.model"
          :propData="computedConfig.model"
          :config="computedConfig"
          :handleData="handleData"
          @watchCallBackFunItem="watchCallBackFun"
        ></component>
  
  </div>
</template>

computedConfig: {
                xType: "input",
                show: true,
                label: "数字输入框",
                type: "number",
                model: "numberInput",
                // valueType: "money",
                valueType: "number",
                placeholder: "数字输入框",
                // suffixIcon: "el-icon-search",
                slotsuffix: "%", //自定义末尾标识名称
                input: val => {
                  console.log("input", val);
                }
              }

              handleData:自己定义参数 作为事件参数最后一个参数
```

> component Attributes
# ** my-forms Attributes**
参数|说明|类型|可选值|默认值
-|:-|:-|:-|:-
is|组件路径|组件本身|-|-
v-model|表单元素的v-model|string|-|-
propData|设置v-model的默认值|-|-
config|组件的配置|object|-
handleData|自定义数据，配置的事件返回参数最后一个参数返回此数据|-|例如 input的change:(val,handleData)=>{}
watchCallBackFun|form回调函数，组件事件配置为string的时候 触发此事件|function|-|回调参数 {name:"事件名称",list:{form数据}，defaultCallBackData:【默认事件所有参数都放在此字段】}
> my-forms Attributes

# ** 所有组件配置 Attributes**

参数|说明|类型|可选值|默认值
-|:-|:-|:-|:-
show|是否加载|Boolean|true/false|-
disabled|禁止操作状态|Boolean/function|-|false
xType|组件类型|string|button/input/select/datePicker/autocomplete/cascader/radio/checkbox/colorPicker/inputNumber/rate/slider/switch/timePicker/timeSelect/progress/upload/tabs/transfer/tree/tag/datePickerRange/timePickerRange/timeSelectRange|-
name|xType:slot,代表插槽的名字|string|-|-
uploadButtonName|xType='upload'时|string/function|-|-
xButtonRight|xType='upload'时,上传按钮最右边操作按钮|my-button配置|-|-
text|xType='button'时|string/function|-|-
hasAuth|使用范围：mybanner的背景图右边新增按钮、myTables的操作栏、myForms的操作按钮、myButton|Object/function/boolean|{code:String,codeList:Array/Function};数组codeList存在code则显示，否则隐藏|-
loadMore|xType='select'时生效，select数据的滚动加载|function/array/obj|function:返回值是array时和配置成array效果一样，默认每次滚动加载增量时10条；object{pageSize:每次加载增量，data:function/array数据源总集合}|详情看示例|
slot|组件内部插槽|详情看示例|-|
prepend|xType=input情况下生效，代表输入框 slot="prepend" 的插槽名字|string|-
append|xType=input情况下生效，代表输入框 slot="append" 的插槽名字|string|-
fileList|xType='upload'|上传的文件列表|array/function|-|-
filesName|xType=upload情况下生效，如果需要给filesList自动添加name属性，则name的值就会取filesList对应的配置filesName的值|string|-|-
model|form表单model配置|string|-|-
startModel/endModel|xType=datePickerRange/timePickerRange/timeSelectRange时生效|详情看示例，合并两个时间组件，替换时间范围组件使用|-
rules|校验规则配置，保持和element一致,其他与elementUI配置项不一一写出来，可参考elementUI|array
style|style配置|-|-|-
labelLineFeed|label文字换行配置|Boolean|-|-
valueType|xType: "input"情况下，数字转金额或者数字显示，保留两位小数,只能输入数字;xType: "select"时，valueType='object',选中为对象|string|money/number/object|-
prefixIcon|首部icon|-
suffixIcon|尾部icon|-
slotsuffix|自定义末尾标识名称|string|-|-
dic|配置下拉或者tree等数据源|array/object/function|注意// 配置1dic: { label: "name", value: "id",data: []},//配置2/dic:{label: "name",value: "id",data:(model)=>{return []}}//配置3dic:[],/配置4/dic:(model)=>{return []},|-
事件名称(例如click等等)|可配置function或者string;配置成string 则配置watchCallBackFun 回调 {name:"事件名称",list:{form数据}，defaultCallBackData:【默认事件所有参数都放在此字段】}
注意|form组件里面定义一个方法 formateOutFormMoneyToNum，此方法返回form表单数据，所有涉及到金额的 都会自动还原成数字返回，不影响form表单页面数据；form组件方法validate（fn）；resetFields（）；clearValidate（）,校验，手动调用。|-|-
其他配置|和elementUI配置保持一直，请参考对应elementUI的组件配置即可；tabs 卡片配置有插槽，可看示例;|-|-
linkType|xType=button,文字使用el-link|string|primary/success/warning/danger/info/default|默认使用button文字
click|xType=button,xType: "button",点击事件|function|-|-
eicon|xType=button,使用elementUI图标|string|-|-
icon|xType=button,使用iconfont图标|string|-|-
pickerOptions|xDatePicker xTimePicker xTimeSelect 的pickerOptions属性|object/function|-
toFixedNum|xType=input,保留几位小数|Number|-|-
toFixed|xType=input,是否四舍五入|boolean|-|-
positiveNumber|xType=input,是否正数|boolean|-|-
