<template>
    <div 
    :class="[{'column':column},{'error':hasError},{'w510':addClass=='w510'},{'w388':addClass=='w388'},'form-item']">
        <div class="form-item-top">
            <label v-if="label" for="">{{ label }}
                <img src="../assets/require.svg" v-if="required" alt="">
            </label>
            <template >
                <slot name="formLeft"></slot>
            </template>
            <template >
                <slot name="formRight"></slot>
            </template>
        </div>
        <div class="form-item-bottom">
            <template >
                <slot name="formDom"></slot>
            </template>
        </div>
    </div>
</template>
<script>
export default {
     name: 'GuipFormItem',
     props:['label','required','addClass','column'],
     data() {
         return {
            hasError: false,
            // 目前这两个宽度用的最多,其余宽度自定义类名修改吧
            classList:{
                'w510':'w510',
                'w388':'w388'
            }
         }
     },
     computed: {
        // dynamicClasses() {
        //     return {
        //         active: this.isActive, // 如果isActive为true,则添加'active'类
        //         error: this.hasError,  // 如果hasError为true,则添加'error'类
        //         highlighted: this.isHighlighted, // 如果isHighlighted为true,则添加'highlighted'类
        //     };
        // }
    },
     mounted(){
         console.log(this.required,'required----');
     }
   }
</script>
<style lang="scss" scoped>
.form-item{
    display: flex;
    align-items: center;
    label{
        min-width: 54px;
        margin-right: 8px;
    }
    .form-item-top{
        display: flex;
        align-items: center;
        text-align: left;
    }
    .form-item-bottom{
        flex: 1;
    }
    .rightdesc{
        flex: 1;
        text-align: right;
        font-size: 12px;
        line-height: 13px;
        letter-spacing: 0.08em;
        font-variation-settings: "opsz" auto;
        color: #8A9099;
    }
}
.w510{
    width: 510px;
}
.w388{
    width: 388px;
}
.column{
    display: flex;
    flex-direction: column !important;
    align-items: self-start;
    .form-item-top{
        width: 100%;
        margin-bottom: 12px;
        justify-content: space-between;
    }
    .form-item-bottom{
        width: 100%;
    }
}
.form-top-icon{
    display: flex;
    align-items: center;
    img{
        width: 16px;
        height: 16px;
        margin-right: 8px;
    }
    span{
        color: #1E2226;
    }
}
</style>