From 64d172717748c383a5c88348037354bffd60f966 Mon Sep 17 00:00:00 2001 From: gaoluyang <2820782392@qq.com> Date: 星期二, 27 五月 2025 17:52:03 +0800 Subject: [PATCH] 页面样式修改 --- src/views/tool/build/CodeTypeDialog.vue | 71 +++++++++++++++++++++++++++++++++++ 1 files changed, 71 insertions(+), 0 deletions(-) diff --git a/src/views/tool/build/CodeTypeDialog.vue b/src/views/tool/build/CodeTypeDialog.vue new file mode 100644 index 0000000..de0beb7 --- /dev/null +++ b/src/views/tool/build/CodeTypeDialog.vue @@ -0,0 +1,71 @@ +<template> + <el-dialog v-model="open" width="500px" title="閫夋嫨鐢熸垚绫诲瀷" @open="onOpen" @close="onClose"> + <el-form ref="codeTypeForm" :model="formData" :rules="rules" label-width="100px"> + <el-form-item label="鐢熸垚绫诲瀷" prop="type"> + <el-radio-group v-model="formData.type"> + <el-radio-button v-for="(item, index) in typeOptions" :key="index" :label="item.value"> + {{ item.label }} + </el-radio-button> + </el-radio-group> + </el-form-item> + <el-form-item v-if="showFileName" label="鏂囦欢鍚�" prop="fileName"> + <el-input v-model="formData.fileName" placeholder="璇疯緭鍏ユ枃浠跺悕" clearable /> + </el-form-item> + </el-form> + + <template #footer> + <el-button @click="onClose">鍙栨秷</el-button> + <el-button type="primary" @click="handelConfirm">纭畾</el-button> + </template> + </el-dialog> +</template> + +<script setup> +const open = defineModel() +const props = defineProps({ + showFileName: Boolean +}) +const emit = defineEmits(['confirm']) +const formData = ref({ + fileName: undefined, + type: 'file' +}) +const codeTypeForm = ref() +const rules = { + fileName: [{ + required: true, + message: '璇疯緭鍏ユ枃浠跺悕', + trigger: 'blur' + }], + type: [{ + required: true, + message: '鐢熸垚绫诲瀷涓嶈兘涓虹┖', + trigger: 'change' + }] +} +const typeOptions = ref([ + { + label: '椤甸潰', + value: 'file' + }, + { + label: '寮圭獥', + value: 'dialog' + } +]) +function onOpen() { + if (props.showFileName) { + formData.value.fileName = `${+new Date()}.vue` + } +} +function onClose() { + open.value = false +} +function handelConfirm() { + codeTypeForm.value.validate(valid => { + if (!valid) return + emit('confirm', { ...formData.value }) + onClose() + }) +} +</script> \ No newline at end of file -- Gitblit v1.9.3