59 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
| <template>
 | |
|   <div class="base-model-wrapper">
 | |
|     <el-dialog v-if="config.visible" v-dialogDrag :title="config.title" :append-to-body="config.appendToBody" :visible.sync="config.visible" :close-on-click-modal="false" :show-close="config.showClose" :width="config.width" :fullscreen="config.fullscreen">
 | |
|       <div class="base-modal-body">
 | |
|         <slot name="dialog-body" />
 | |
|       </div>
 | |
|       <div slot="footer" class="base-modal-footer">
 | |
|         <slot name="dialog-footer" />
 | |
|       </div>
 | |
|     </el-dialog>
 | |
|   </div>
 | |
| 
 | |
| </template>
 | |
| <script>
 | |
| export default {
 | |
|   name: 'BaseDialog',
 | |
|   props: {
 | |
|     config: {
 | |
|       type: Object,
 | |
|       default: () => {
 | |
|         return {
 | |
|           visible: false,
 | |
|           title: '',
 | |
|           closeOnClickModal: false,
 | |
|           showClose: true,
 | |
|           appendToBody: false,
 | |
|           width: '100px',
 | |
|           fullscreen: false
 | |
|         }
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| }
 | |
| </script>
 | |
| <style lang="scss">
 | |
|   .base-model-wrapper{
 | |
|     .el-dialog__header{
 | |
|       padding: 10px;
 | |
|       .el-dialog__headerbtn{
 | |
|         top: 10px;
 | |
|         right: 10px;
 | |
|       }
 | |
|     }
 | |
|     .el-dialog__body{
 | |
|       padding:10px 10px 10px 10px;
 | |
|       .base-modal-body{
 | |
|         min-height: 100px;
 | |
|         max-height:650px;
 | |
|         overflow-y: auto;
 | |
|         padding: 10px;
 | |
|         border: 1px solid #e0e0e0;
 | |
|       }
 | |
|     }
 | |
|     .el-dialog__footer{
 | |
|       padding: 10px;
 | |
|     }
 | |
|   }
 | |
| </style>
 |