vue-ant-design table template模式二次封装 动态slot 不渲染

// v-table
<div class="v-table">
<a-table
          @change="handleTableChange"
          :columns="columns"
          :scopedSlots="$scopedSlots"
          :scroll="{ y: true }"
          :dataSource="datas"
          :loading="loading"
          :pagination="{ total: pagination.totalPages * pagination.offSize, defaultPageSize: pagination.offSize, current: pagination.offSet, pageSize: pagination.offSize, showSizeChanger: true, showQuickJumper: true, pageSizeOptions: $store.state.app.pageSizeOptions }">
</a-table>
</div>

use:

<v-table :columns="columns" :datas="datas" :loading="loading">
      <div slot="state" slot-scope="item"><a-switch checkedChildren="启用" unCheckedChildren="禁用" :loading="item.loading" :checked="item.state" @click="changeState(item)" /></div> //不渲染
  </v-table>

怎样才可以动态传过去又可以渲染自定义column呢?

阅读 6.4k
2 个回答

看起来你并没有把slot传递到a-table里面去。
话说这一层封装好像无多大用?

如果了解了slot会以函数形式暴露在组件的$scopeSlots属性里,那你可以直接通过JS的方式把v-table的slot赋值到a-table

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题