Commit 58ef8a6b1dbcb80bad79faf1dfc859368daa29a0
1 parent
58392111
style: crontab
Showing
1 changed file
with
31 additions
and
41 deletions
yudao-ui-admin-vue3/src/components/Crontab/src/Crontab.vue
| @@ -2,9 +2,6 @@ | @@ -2,9 +2,6 @@ | ||
| 2 | import { | 2 | import { |
| 3 | ElInput, | 3 | ElInput, |
| 4 | ElInputNumber, | 4 | ElInputNumber, |
| 5 | - ElDropdown, | ||
| 6 | - ElDropdownMenu, | ||
| 7 | - ElDropdownItem, | ||
| 8 | ElDialog, | 5 | ElDialog, |
| 9 | ElTabs, | 6 | ElTabs, |
| 10 | ElTabPane, | 7 | ElTabPane, |
| @@ -352,14 +349,19 @@ onMounted(() => { | @@ -352,14 +349,19 @@ onMounted(() => { | ||
| 352 | defaultValue.value = props.modelValue | 349 | defaultValue.value = props.modelValue |
| 353 | }) | 350 | }) |
| 354 | const emit = defineEmits(['update:modelValue']) | 351 | const emit = defineEmits(['update:modelValue']) |
| 355 | -const handleShortcuts = (command) => { | ||
| 356 | - if (command == 'custom') { | ||
| 357 | - open() | ||
| 358 | - } else { | ||
| 359 | - defaultValue.value = command | ||
| 360 | - emit('update:modelValue', defaultValue.value) | 352 | +const select = ref() |
| 353 | +watch( | ||
| 354 | + () => select.value, | ||
| 355 | + () => { | ||
| 356 | + console.info(select.value) | ||
| 357 | + if (select.value == 'custom') { | ||
| 358 | + open() | ||
| 359 | + } else { | ||
| 360 | + defaultValue.value = select.value | ||
| 361 | + emit('update:modelValue', defaultValue.value) | ||
| 362 | + } | ||
| 361 | } | 363 | } |
| 362 | -} | 364 | +) |
| 363 | const open = () => { | 365 | const open = () => { |
| 364 | set() | 366 | set() |
| 365 | dialogVisible.value = true | 367 | dialogVisible.value = true |
| @@ -510,37 +512,23 @@ const submit = () => { | @@ -510,37 +512,23 @@ const submit = () => { | ||
| 510 | } | 512 | } |
| 511 | </script> | 513 | </script> |
| 512 | <template> | 514 | <template> |
| 513 | - <el-input v-model="defaultValue" v-bind="$attrs"> | 515 | + <el-input v-model="defaultValue" v-bind="$attrs" class="input-with-select"> |
| 514 | <template #append> | 516 | <template #append> |
| 515 | - <el-dropdown | ||
| 516 | - split-button | ||
| 517 | - type="text" | ||
| 518 | - @command="handleShortcuts" | ||
| 519 | - style="width: 35px; margin-left: 5px; margin-right: 2px" | ||
| 520 | - > | ||
| 521 | - 生成器 | ||
| 522 | - <template #dropdown> | ||
| 523 | - <el-dropdown-menu> | ||
| 524 | - <el-dropdown-item command="0 * * * * ?">每分钟</el-dropdown-item> | ||
| 525 | - <el-dropdown-item command="0 0 * * * ?">每小时</el-dropdown-item> | ||
| 526 | - <el-dropdown-item command="0 0 0 * * ?">每天零点</el-dropdown-item> | ||
| 527 | - <el-dropdown-item command="0 0 0 1 * ?">每月一号零点</el-dropdown-item> | ||
| 528 | - <el-dropdown-item command="0 0 0 L * ?">每月最后一天零点</el-dropdown-item> | ||
| 529 | - <el-dropdown-item command="0 0 0 ? * 1">每周星期日零点</el-dropdown-item> | ||
| 530 | - <el-dropdown-item | ||
| 531 | - v-for="(item, index) in shortcuts" | ||
| 532 | - :key="item.value" | ||
| 533 | - :divided="index == 0" | ||
| 534 | - :command="item.value" | ||
| 535 | - > | ||
| 536 | - {{ item.text }} | ||
| 537 | - </el-dropdown-item> | ||
| 538 | - <el-dropdown-item divided command="custom"> | ||
| 539 | - <Icon icon="ep:menu" />自定义 | ||
| 540 | - </el-dropdown-item> | ||
| 541 | - </el-dropdown-menu> | ||
| 542 | - </template> | ||
| 543 | - </el-dropdown> | 517 | + <el-select v-model="select" placeholder="生成器" style="width: 115px"> |
| 518 | + <el-option label="每分钟" value="0 * * * * ?" /> | ||
| 519 | + <el-option label="每小时" value="0 0 * * * ?" /> | ||
| 520 | + <el-option label="每天零点" value="0 0 0 * * ?" /> | ||
| 521 | + <el-option label="每月一号零点" value="0 0 0 1 * ?" /> | ||
| 522 | + <el-option label="每月最后一天零点" value="0 0 0 L * ?" /> | ||
| 523 | + <el-option label="每周星期日零点" value="0 0 0 ? * 1" /> | ||
| 524 | + <el-option | ||
| 525 | + v-for="(item, index) in shortcuts" | ||
| 526 | + :key="index" | ||
| 527 | + :label="item.text" | ||
| 528 | + :value="item.value" | ||
| 529 | + /> | ||
| 530 | + <el-option label="自定义" value="custom" /> | ||
| 531 | + </el-select> | ||
| 544 | </template> | 532 | </template> |
| 545 | </el-input> | 533 | </el-input> |
| 546 | 534 | ||
| @@ -1015,8 +1003,10 @@ const submit = () => { | @@ -1015,8 +1003,10 @@ const submit = () => { | ||
| 1015 | background: var(--el-color-primary); | 1003 | background: var(--el-color-primary); |
| 1016 | color: #fff; | 1004 | color: #fff; |
| 1017 | } | 1005 | } |
| 1018 | - | ||
| 1019 | [data-theme='dark'] .sc-cron-num h4 { | 1006 | [data-theme='dark'] .sc-cron-num h4 { |
| 1020 | background: var(--el-color-white); | 1007 | background: var(--el-color-white); |
| 1021 | } | 1008 | } |
| 1009 | +.input-with-select .el-input-group__prepend { | ||
| 1010 | + background-color: var(--el-fill-color-blank); | ||
| 1011 | +} | ||
| 1022 | </style> | 1012 | </style> |