P_tab_a.vue 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <template>
  2. <div class="taba">
  3. <!-- 提示 -->
  4. <p class="msg">
  5. <span>{{msg}}</span>
  6. <span class="link">继续练习</span>
  7. </p>
  8. <!-- table -->
  9. <Table
  10. v-for='(item,index) in tableData'
  11. :key="index"
  12. :Data="item"
  13. @Func="Success"
  14. />
  15. </div>
  16. </template>
  17. <script>
  18. const Table = () => import("@/components/Table/index")
  19. import Home from '@/api/home'
  20. export default {
  21. components: {
  22. Table
  23. },
  24. data () {
  25. return {
  26. msg: `于2021-04-28 15:23:16最后练习到 飞机 > XX机第3道选择题,点击`,//信息提示
  27. tableData: []
  28. }
  29. },
  30. created () {
  31. Home.mock_examination_a().then(res => {
  32. let { data } = res, tableData = [];
  33. try {
  34. tableData = data.map(item => {
  35. let Obj = { id: item.id, name: item.name, data: item.chapters };
  36. return Obj
  37. })
  38. this.tableData = tableData;
  39. } catch (err) {
  40. this.$message.error(`数据处理:${err}`);
  41. }
  42. })
  43. },
  44. methods: {
  45. Success (data) {
  46. let { type, data: obj } = data, query = {};
  47. if (type == 'th') {
  48. query = { subject: obj.id, chapter: '' };
  49. } else {
  50. query = { subject: obj.subject_id, chapter: obj.id }
  51. }
  52. Home.exam(query).then(res => {
  53. let { practise } = res.data;
  54. this.$router.push({ path: '/exam', query: { practise } });
  55. })
  56. }
  57. }
  58. }
  59. </script>
  60. <style lang="less" scoped>
  61. .taba {
  62. .msg {
  63. color: #777;
  64. font-size: 14px;
  65. .link {
  66. color: #67c23a;
  67. margin-left: 5px;
  68. cursor: pointer;
  69. }
  70. }
  71. }
  72. </style>