myBasicTraining.vue 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <template>
  2. <view>
  3. <u-navbar back-text="" title="" back-icon-color="#FFFFFF" :background="{ background: '#3D5D4C' }" :border-bottom="false"></u-navbar>
  4. <image class="bg" src="../../../static/img/banner-myBasicTraining.png" mode="widthFix"></image>
  5. <view class="title u-flex u-row-between">
  6. <view class="left">
  7. 学习进度
  8. </view>
  9. <!-- <view class="right">
  10. 查看全部
  11. </view> -->
  12. </view>
  13. <view class="course">
  14. <view class="course-item u-flex u-row-between"
  15. v-for="(item,index) in onlineData"
  16. :key="index"
  17. :class="{ 'unstudy':item.flag == 0, 'studying':item.flag == 1, 'studyed':item.flag == 2 }"
  18. @click="courseClick(item)">
  19. <view class="left">
  20. <view class="course-item-title">
  21. 第{{index + 1}}节
  22. </view>
  23. <view class="course-item-name">
  24. {{item.adaptName}}
  25. </view>
  26. </view>
  27. <view class="right">
  28. <u-icon v-if="item.flag == 2" name="checkbox-mark" color="#00a046" size="28" ></u-icon>
  29. <u-icon v-else name="arrow-right" color="#2683e5" size="28" ></u-icon>
  30. </view>
  31. </view>
  32. </view>
  33. </view>
  34. </template>
  35. <script>
  36. export default{
  37. data(){
  38. return{
  39. onlineData:[],
  40. }
  41. },
  42. onLoad(){
  43. },
  44. onShow(){
  45. this.getAdaptTrainOnline();
  46. },
  47. methods:{
  48. getAdaptTrainOnline(){
  49. this.$u.api.getAdaptTrainOnline().then(res=>{
  50. if(res.code == 200){
  51. this.onlineData = res.data;
  52. }else{
  53. uni.showToast({
  54. icon:'none',
  55. title:res.msg
  56. })
  57. }
  58. console.log('getAdaptTrainOnline',JSON.parse(JSON.stringify(res)));
  59. })
  60. },
  61. courseClick(item){
  62. this.$u.route({
  63. url: 'pages/basicTraining/basicTrainingDetails/basicTrainingDetails',
  64. params: {
  65. id: item.id
  66. }
  67. });
  68. },
  69. }
  70. }
  71. </script>
  72. <style lang="scss" scoped>
  73. page{padding-bottom: 48rpx;background-color: #eee;}
  74. .bg{width: 100%;}
  75. .title {padding: 24rpx;;background-color: #fff;border-bottom: 1px solid #ddd;}
  76. .title .left{font-size: 36rpx;}
  77. .course{background-color: #fff;}
  78. .course-item{margin-bottom: 24rpx;padding: 20rpx 24rpx;}
  79. .course-item + .course-item{border-top: 1px solid #ddd;}
  80. .course-item.studyed .left{color: #c5c5c5;}
  81. // @import './myBasicTraining.scss'
  82. </style>