<template>
  <div class="input-form">
    <el-form-item
      :key="item.model"
      :prop="item.model"
      :label="item.label || ''"
      :label-width="item.labelWidth || item['label-width'] || ''"
      :required="item.required || false"
      :rules="item.rules || []"
      :size="item.size"
    >
      <el-input :style="{ width: item.labelWidth || item['model-width'] || '100%' }"
        v-bind="item.attrs || {}"
        v-on="$listeners"
        v-model="formData[item.model]"
        :disabled="item.disabled || false"
        :placeholder="item.placeholder || ''"
      ></el-input>
    </el-form-item>
  </div>
</template>

<script>
export default {
  name: 'InputForm',
  componentName: 'InputForm',
  props: {
    item: {
      type: Object,
      default () {
        return {}
      }
    },
    formData: {
      type: Object,
      default () {
        return {}
      }
    }
  },
  data () {
    return {}
  }
}
</script>
