diff --git a/reading-platform-frontend/src/components/course-edit/Step4IntroLesson.vue b/reading-platform-frontend/src/components/course-edit/Step4IntroLesson.vue index 1e06a62..3c87427 100644 --- a/reading-platform-frontend/src/components/course-edit/Step4IntroLesson.vue +++ b/reading-platform-frontend/src/components/course-edit/Step4IntroLesson.vue @@ -14,7 +14,7 @@ diff --git a/reading-platform-frontend/src/components/course/LessonConfigPanel.vue b/reading-platform-frontend/src/components/course/LessonConfigPanel.vue index 03c78d9..96543b3 100644 --- a/reading-platform-frontend/src/components/course/LessonConfigPanel.vue +++ b/reading-platform-frontend/src/components/course/LessonConfigPanel.vue @@ -127,10 +127,16 @@ -
至少添加一个环节,每个环节需填写名称、内容、目标
- +
+ 可选配置,可添加教学环节 + 至少添加一个环节,每个环节需填写名称、内容、目标 +
+ ({ ...props.modelValue, }); +// 教学环节是否必填:集体课、领域课必填,导入课可选 +const stepsRequired = computed( + () => props.lessonType !== 'INTRO' +); + // 教学延伸是否必填:集体课、领域课必填(结构同集体课) const extensionRequired = computed( () => props.lessonType === 'COLLECTIVE' || props.lessonType?.startsWith('DOMAIN_') @@ -297,7 +308,10 @@ const formRules = computed(() => { message: `课程时长需在 ${minD}-${maxD} 分钟之间`, }, ], - steps: [ + }; + // 教学环节:集体课/领域课必填,导入课不校验 + if (stepsRequired.value) { + rules.steps = [ { validator: (_: unknown, value: StepData[] | undefined) => { const steps = value || []; @@ -319,8 +333,8 @@ const formRules = computed(() => { return Promise.resolve(); }, }, - ], - }; + ]; + } if (extensionRequired.value) { rules.extension = [ { required: true, whitespace: true, message: '请输入教学延伸活动建议' },