fix(cron): 用中文说明替代解析器原始报错
- 后端 CronPreviewError 增加 user_message,预览与任务保存共用;解析器英文原文只写日志 - 针对「0/2」这类单数字步长给出具体改法(*/2 或 1-10/2) - 前端预览面板用警告图标 + 中文提示展示,网络异常回退通用文案,Cron 输入同步 aria-invalid
This commit is contained in:
@@ -310,7 +310,17 @@
|
||||
}
|
||||
|
||||
.cron-preview-error {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
gap: 8px;
|
||||
color: var(--su-color-danger);
|
||||
font-size: var(--su-font-size-sm);
|
||||
line-height: var(--su-line-height-sm);
|
||||
}
|
||||
|
||||
.cron-preview-error i {
|
||||
flex: none;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.env-detector-bar {
|
||||
|
||||
@@ -4,6 +4,7 @@ import {
|
||||
Button,
|
||||
Checkbox,
|
||||
FormField,
|
||||
Icon,
|
||||
Input,
|
||||
Modal,
|
||||
Notice,
|
||||
@@ -290,7 +291,7 @@ export function TaskEditorModal({
|
||||
{...register('cron')}
|
||||
className="mono-input"
|
||||
placeholder="0 0 2 * * *"
|
||||
aria-invalid={Boolean(errors.cron)}
|
||||
aria-invalid={Boolean(errors.cron) || cronPreview.isError}
|
||||
/>
|
||||
</FormField>
|
||||
|
||||
@@ -354,9 +355,14 @@ export function TaskEditorModal({
|
||||
</Text>
|
||||
</div>
|
||||
) : cronPreview.isError ? (
|
||||
<Text size="sm" className="cron-preview-error">
|
||||
{cronPreview.error.message}
|
||||
</Text>
|
||||
<div className="cron-preview-error">
|
||||
<Icon name="warning_line" />
|
||||
<span>
|
||||
{cronPreview.error instanceof ApiRequestError
|
||||
? cronPreview.error.message
|
||||
: '暂时无法计算运行时间,请稍后重试'}
|
||||
</span>
|
||||
</div>
|
||||
) : cronPreview.data?.runs.length ? (
|
||||
<div className="cron-run-grid">
|
||||
{cronPreview.data.runs.map((run, index) => (
|
||||
|
||||
Reference in New Issue
Block a user