classDetail.tsx 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { defineComponent, ref } from 'vue';
  2. import styles from './index.module.less';
  3. import { NTabs, NTabPane } from 'naive-ui';
  4. import { useRoute } from 'vue-router';
  5. import CBreadcrumb from '@/components/CBreadcrumb';
  6. import ClassStudent from './components/classStudent';
  7. import AfterWork from './components/afterWork';
  8. import ClassRecord from './components/classRecord';
  9. import TestRecode from './components/testRecode';
  10. export default defineComponent({
  11. name: 'base-setting',
  12. setup() {
  13. const activeTab = ref('attendclass');
  14. const route = useRoute();
  15. const routerList = ref([
  16. { name: '班级管理', path: '/classList' },
  17. { name: route.query.name, path: '/classDetail' }
  18. ] as any);
  19. return () => (
  20. <div>
  21. <CBreadcrumb list={routerList.value}></CBreadcrumb>
  22. <div class={styles.listWrap}>
  23. <NTabs
  24. class={styles.customTabs}
  25. v-model:value={activeTab.value}
  26. size="large"
  27. animated
  28. pane-wrapper-style="margin: 0 -4px"
  29. pane-style="padding-left: 4px; padding-right: 4px; box-sizing: border-box;">
  30. <NTabPane name="student" tab="学员名单">
  31. <ClassStudent></ClassStudent>
  32. </NTabPane>
  33. <NTabPane name="afterWork" tab="课后训练">
  34. <AfterWork></AfterWork>
  35. </NTabPane>
  36. <NTabPane name="practice" tab="练习记录">
  37. <TestRecode></TestRecode>
  38. </NTabPane>
  39. <NTabPane name="attendclass" tab="上课记录">
  40. <ClassRecord />
  41. </NTabPane>
  42. </NTabs>
  43. </div>
  44. </div>
  45. );
  46. }
  47. });