<template>
  <el-table-column v-if="!disableColumns" :prop="prop" :label="label" :type="type" :width="width" :minWidth="minWidth" :labelClassName="labelClassName" :align="align"
      :className="className" :headerAlign="headerAlign" :filterPlacement="filterPlacement" :resizable="resizable" :reserveSelection="reserveSelection"
      :filterMultiple="filterMultiple" :fixed="fixed" :sortMethod="sortMethod" :filterMethod="filterMethod" :selectable="selectable"
      :formatter="formatter" :sortOrders="sortOrders" :filteredValue="filteredValue" :filters="filters"
      :sortBy="sortBy" :sortable="sortable" :columnKey="columnKey" :index="index"
  >
        <template slot-scope="scope">
          <slot :row='scope.row' ></slot>
        </template>
  </el-table-column>
</template>

<script>
    export default {
        name: "index",
        data(){
            return {
                disableColumns:false
            }
        },
        props:{
            prop:{
                type:String,
                default:''
            },
            label:{
                type:String,
                default:''
            },
            type:{
                type:String,
                default:''
            },
            width:{
                type:String,
                default:''
            },
            minWidth:{
                type:String,
                default:''
            },
            labelClassName:{
                type:String,
                default:''
            },
            align:{
                type:String,
                default:'left'
            },
            className:{
                type:String,
                default:''
            },
            headerAlign:{
                type:String,
                default:''
            },
            filterPlacement:{
                type:String,
                default:''
            },
            resizable:{
                type:Boolean,
                default:true
            },
            reserveSelection:{
                type:Boolean,
                default:false
            },
            filterMultiple:{
                type:Boolean,
                default:true
            },
            fixed:{
                default:null
            },
            sortMethod:{
                default(){
                    return function () {

                    }
                }
            },
            filterMethod:{
                default(){
                    return null
                }
            },
            selectable:{
                default(){
                    return function () {

                    }
                }
            },
            formatter:{
                default(){
                    return null
                }
            },
            sortOrders:{
                type:Array,
                default(){
                    return []
                }
            },
            filteredValue:{
                type:Array,
                default(){
                    return []
                }
            },
            filters:{
                type:Array,
                default(){
                    return
                }
            },
            sortBy:{
                default(){
                    return []
                }
            },
            sortable:{
                default:false
            },
            columnKey:{
                type:String,
                default:''
            },
            index:{
                default:NaN
            },
        },
        methods:{
            // hide(){
            //     this.
            // }
        },
        mounted() {
            setTimeout(()=>{
                console.log(this.$slots)
            },500)
        }
    }
</script>

<style scoped>

</style>
