|
@@ -1,40 +1,73 @@
|
|
import ColField from "@/components/col-field";
|
|
import ColField from "@/components/col-field";
|
|
import ColFieldGroup from "@/components/col-field-group";
|
|
import ColFieldGroup from "@/components/col-field-group";
|
|
-import { Button, Field, Icon } from "vant";
|
|
|
|
|
|
+import ColUpload from "@/components/col-upload";
|
|
|
|
+import ColUploadVideo from "@/components/col-upload-video";
|
|
|
|
+import { Button, Col, Dialog, Field, Icon, Row } from "vant";
|
|
import { defineComponent } from "vue";
|
|
import { defineComponent } from "vue";
|
|
import styles from './class-content.module.less';
|
|
import styles from './class-content.module.less';
|
|
|
|
|
|
export default defineComponent({
|
|
export default defineComponent({
|
|
name: "ClassContent",
|
|
name: "ClassContent",
|
|
|
|
+ data() {
|
|
|
|
+ return {
|
|
|
|
+ dataList: [1, 2]
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ methods: {
|
|
|
|
+ addItem() {
|
|
|
|
+ this.dataList.push(this.dataList.length + 1)
|
|
|
|
+ },
|
|
|
|
+ removeItem(index: number) {
|
|
|
|
+ // 最少一节课
|
|
|
|
+ if(this.dataList.length <= 1) return
|
|
|
|
+ Dialog.confirm({
|
|
|
|
+ title: '操作',
|
|
|
|
+ message: `确定删除该条数据吗?`,
|
|
|
|
+ confirmButtonColor: '#2DC7AA',
|
|
|
|
+ })
|
|
|
|
+ .then(() => {
|
|
|
|
+ // on confirm
|
|
|
|
+ this.dataList.splice(index, 1)
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ },
|
|
render() {
|
|
render() {
|
|
return (
|
|
return (
|
|
<div class={styles['class-content']}>
|
|
<div class={styles['class-content']}>
|
|
- <ColFieldGroup>
|
|
|
|
- <ColField title="课程标题" required>
|
|
|
|
- <Field
|
|
|
|
- name="课程标题"
|
|
|
|
- placeholder="请输入您的课程标题"
|
|
|
|
- />
|
|
|
|
- </ColField>
|
|
|
|
- <ColField title="课程内容" required>
|
|
|
|
- <Field
|
|
|
|
- name="课程内容"
|
|
|
|
- placeholder="请输入您的课程内容"
|
|
|
|
- />
|
|
|
|
- </ColField>
|
|
|
|
- <ColField title="课程视频及视频封面" required>
|
|
|
|
- <Field
|
|
|
|
- name="课程标题"
|
|
|
|
- placeholder="请输入您的课程标题"
|
|
|
|
- />
|
|
|
|
- </ColField>
|
|
|
|
- </ColFieldGroup>
|
|
|
|
|
|
+ {this.dataList.map((item: any, index: number) => (
|
|
|
|
+ <>
|
|
|
|
+ <div class={styles.titleSection}>
|
|
|
|
+ <span class={styles.title}>第{ index + 1 }课</span>
|
|
|
|
+ <Icon name="delete-o" class={this.dataList.length <= 1 ? styles.disabled : null} onClick={() => this.removeItem(index)} size={20} />
|
|
|
|
+ </div>
|
|
|
|
+ <ColFieldGroup>
|
|
|
|
+ <ColField title="课程标题" required>
|
|
|
|
+ <Field
|
|
|
|
+ name="课程标题"
|
|
|
|
+ placeholder="请输入您的课程标题"
|
|
|
|
+ />
|
|
|
|
+ </ColField>
|
|
|
|
+ <ColField title="课程内容" required>
|
|
|
|
+ <Field
|
|
|
|
+ name="课程内容"
|
|
|
|
+ placeholder="请输入您的课程内容"
|
|
|
|
+ />
|
|
|
|
+ </ColField>
|
|
|
|
+ <ColField title="课程视频及视频封面" required border={false}>
|
|
|
|
+ <Row justify="space-between" style={{ width: '100%', paddingTop: '12px' }}>
|
|
|
|
+ <Col span={12}>
|
|
|
|
+ <ColUploadVideo class={styles.upload} tips="点击上传视屏" />
|
|
|
|
+ </Col>
|
|
|
|
+ <Col span={12}>
|
|
|
|
+ <ColUpload class={styles.upload} tips="点击上传视频封面" />
|
|
|
|
+ </Col>
|
|
|
|
+ </Row>
|
|
|
|
+ </ColField>
|
|
|
|
+ </ColFieldGroup>
|
|
|
|
+ </>
|
|
|
|
+ ))}
|
|
|
|
|
|
- {/* <div class={styles['add-item']}>
|
|
|
|
- <Icon name="add-o" size={20} class={styles.add} />
|
|
|
|
- <span>添加课程</span>
|
|
|
|
- </div> */}
|
|
|
|
- <Button class={styles['add-item']} block icon="add-o">添加课程</Button>
|
|
|
|
|
|
+ <Button class={styles['add-item']} block icon="add-o" onClick={this.addItem}>添加课程</Button>
|
|
</div>
|
|
</div>
|
|
)
|
|
)
|
|
}
|
|
}
|