vue 插槽的嵌套


插槽只能在根节点,如果封装一个组件a,这个组件里使用到了另一个组件b,组件b中也有插槽。组件a想在插槽中预留b的插槽(如再次封装antdv的table组件,table本身有插槽,此时你想在自己封装的myTable中预留一个插槽用于放入table的插槽)这个时候会报错,提示插槽只能在根节点中。解决方法如下:

    
    
    
      bordered
      :columns="propData.tableColumns"
      :rowKey="(record,index) => { return record.id || index }"
      :dataSource="dataSource"
      :pagination="pagination"
      :loading="loading"
      :scopedSlots="{ $scopedSlots }"
      @change="handleTableChange">
        
    

使用自定义组件,假设表格的columns的一列预留了enable的具名插槽:


    
    
  
vue