| 123456789101112131415161718192021222324252627282930313233343536373839 |
- <template>
- <bs-modal :width="modalOptions.width" :visible="modalOptions.visible" :title="modalOptions.title" :modal-extra-props="modalOptions.modalExtraProps">
- <bs-table v-if="modalOptions.visible" v-bind="tableOptions" class="bs-table-modal" ref="bsTableRef" />
- </bs-modal>
- </template>
- <script setup>
- import { ref } from 'vue';
- import BsTable from '/@/components/BsUi/Table/index.js';
- import BsModal from '/@/components/BsUi/Modal/index.js';
- const bsTableRef = ref(null);
- const props = defineProps({
- modalOptions: {
- required: true,
- default: {
- width: 800,
- visible: false,
- title: '列表弹窗',
- modalExtraProps: {},
- },
- },
- tableOptions: {
- required: true,
- default: {},
- },
- });
- defineExpose({
- bsTableRef,
- });
- </script>
- <style lang="scss" scoped>
- .bs-table-modal {
- :deep(.vxe-grid--table-container) {
- padding: 0 0 10px 0;
- }
- }
- </style>
|