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 | 2 | import { |
| 3 | 3 | ElInput, |
| 4 | 4 | ElInputNumber, |
| 5 | - ElDropdown, | |
| 6 | - ElDropdownMenu, | |
| 7 | - ElDropdownItem, | |
| 8 | 5 | ElDialog, |
| 9 | 6 | ElTabs, |
| 10 | 7 | ElTabPane, |
| ... | ... | @@ -352,14 +349,19 @@ onMounted(() => { |
| 352 | 349 | defaultValue.value = props.modelValue |
| 353 | 350 | }) |
| 354 | 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 | 365 | const open = () => { |
| 364 | 366 | set() |
| 365 | 367 | dialogVisible.value = true |
| ... | ... | @@ -510,37 +512,23 @@ const submit = () => { |
| 510 | 512 | } |
| 511 | 513 | </script> |
| 512 | 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 | 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 | 532 | </template> |
| 545 | 533 | </el-input> |
| 546 | 534 | |
| ... | ... | @@ -1015,8 +1003,10 @@ const submit = () => { |
| 1015 | 1003 | background: var(--el-color-primary); |
| 1016 | 1004 | color: #fff; |
| 1017 | 1005 | } |
| 1018 | - | |
| 1019 | 1006 | [data-theme='dark'] .sc-cron-num h4 { |
| 1020 | 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 | 1012 | </style> | ... | ... |