achieveList.vue 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <template>
  2. <div id="achieveList">
  3. <el-row>
  4. <el-col :span="24" class="list">
  5. <van-collapse v-model="openCollapse">
  6. <van-collapse-item :name="index" v-for="(item, index) in achieveList" :key="index">
  7. <div slot="title" class="title">
  8. <span class="name">{{ item.studentid }}</span>
  9. <van-button type="primary" size="mini" @click="clickBtn()">上成绩</van-button>
  10. </div>
  11. <van-row v-for="(tag, index) in item.lesson" :key="index">
  12. <van-col :span="14" class="score"> 课程名称:{{ tag.lessonid }} </van-col>
  13. <van-col :span="10" class="score"> 作业分:{{ tag.score }} 分</van-col>
  14. </van-row>
  15. </van-collapse-item>
  16. </van-collapse>
  17. </el-col>
  18. </el-row>
  19. <van-dialog v-model="show" title="学生成绩上传" :showConfirmButton="false">
  20. <van-form @submit="onSubmit">
  21. <van-field v-model="form.name" name="学生名称" disabled />
  22. <van-field v-model="form.lessonid" name="课程名称" label="课程名称" placeholder="请输入课程名称" />
  23. <van-field v-model="form.score" name="作业分数" label="作业分数" placeholder="请输入作业分数" />
  24. <div style="margin: 16px;">
  25. <van-button round block type="info" native-type="submit">
  26. 提交
  27. </van-button>
  28. </div>
  29. </van-form>
  30. </van-dialog>
  31. </div>
  32. </template>
  33. <script>
  34. export default {
  35. name: 'achieveList',
  36. props: {
  37. achieveList: null,
  38. show: null,
  39. form: null,
  40. lessonList: null,
  41. },
  42. components: {},
  43. data: () => ({
  44. openCollapse: [],
  45. option1: [
  46. { text: '全部商品', value: 0 },
  47. { text: '新款商品', value: 1 },
  48. ],
  49. }),
  50. created() {},
  51. computed: {},
  52. methods: {
  53. clickBtn() {
  54. this.$emit('clickDialog');
  55. },
  56. onSubmit() {
  57. this.$emit('submit', { data: this.form });
  58. },
  59. },
  60. };
  61. </script>
  62. <style lang="less" scoped>
  63. p {
  64. padding: 0;
  65. margin: 0;
  66. }
  67. .list {
  68. background: #fff;
  69. margin: 0 5px 5px 5px;
  70. width: 97%;
  71. padding: 0 10px;
  72. border-radius: 15px;
  73. }
  74. .list .title {
  75. float: left;
  76. width: 100%;
  77. }
  78. .list .name {
  79. float: left;
  80. width: 80%;
  81. font-size: 20px;
  82. }
  83. /deep/.el-collapse-item__content {
  84. padding: 10px 0 10px 0;
  85. }
  86. .list .score {
  87. padding: 10px 0;
  88. font-size: 18px;
  89. }
  90. </style>