名师详情前端

1、调用讲师详情接口整合前端

(1)修改页面 修改pages/teacher/index.vue讲师列表页面跳转详情的链接(动态路由)。

(2)pages/teacher/_id.vue中实现js

java 复制代码
<script>
import teacher from "@/api/teacher";
export default {
 //异步请求操作
  //params:this.$route.params
  asyncData({ params, error }) {
    //调用接口
    return teacher.getTeacherInfo(params.id).then(response => {
      //得到返回的两个结果
      return {
        eduTeacher: response.data.data.eduTeacher,
        courseList: response.data.data.courseList

      };
    });
  }
};
</script>

(3)页面元素改造

java 复制代码
<template>
  <div id="aCoursesList" class="bg-fa of">
    <!-- 讲师介绍 开始 -->
    <section class="container">
      <header class="comm-title">
        <h2 class="fl tac">
          <span class="c-333">讲师介绍</span>
        </h2>
      </header>
      <div class="t-infor-wrap">
        <!-- 讲师基本信息 -->
        <section class="fl t-infor-box c-desc-content">
          <div class="mt20 ml20">
            <section class="t-infor-pic">
              <img :src="eduTeacher.avatar">
            </section>
            <h3 class="hLh30">
              <span class="fsize24 c-333">{{eduTeacher.name}}&nbsp;{{eduTeacher.level==1?'高级讲师':'首席讲师'}}</span>
            </h3>
            <section class="mt10">
              <span class="t-tag-bg">{{eduTeacher.career}}</span>
            </section>
            <section class="t-infor-txt">
              <p
                class="mt20"
              >{{eduTeacher.intro}}</p>
            </section>
            <div class="clear"></div>
          </div>
        </section>
        <div class="clear"></div>
      </div>
      <section class="mt30">
        <div>
          <header class="comm-title all-teacher-title c-course-content">
            <h2 class="fl tac">
              <span class="c-333">主讲课程</span>
            </h2>
            <section class="c-tab-title">
              <a href="javascript: void(0)">&nbsp;</a>
            </section>
          </header>
          <!-- /无数据提示 开始-->
          <section class="no-data-wrap" v-if="courseList.length==0">
            <em class="icon30 no-data-ico">&nbsp;</em>
            <span class="c-666 fsize14 ml10 vam">没有相关数据,小编正在努力整理中...</span>
          </section>
          <!-- /无数据提示 结束-->
          <article class="comm-course-list" v-else>
            <ul class="of">
              <li v-for="(course,index) in courseList" :key="index">
                <div class="cc-l-wrap">
                  <section class="course-img">
                    <img :src="course.cover" class="img-responsive" >
                    <div class="cc-mask">
                      <a href="#" title="开始学习" target="_blank" class="comm-btn c-btn-1">开始学习</a>
                    </div>
                  </section>
                  <h3 class="hLh30 txtOf mt10">
                    <a href="#" :title="course.title" target="_blank" class="course-title fsize18 c-333">{{course.title}}</a>
                  </h3>
                </div>
              </li>
              
            </ul>
            <div class="clear"></div>
          </article>
        </div>
      </section>
    </section>
    <!-- /讲师介绍 结束 -->
  </div>
</template>
相关推荐
小邓吖1 小时前
自己做了一个工具网站
前端·分布式·后端·中间件·架构·golang
大爱编程♡1 小时前
SpringBoot统一功能处理
java·spring boot·后端
好好研究4 小时前
总结SSM设置欢迎页的方式
xml·java·后端·mvc
小马爱打代码4 小时前
Spring Boot:第三方 API 调用的企业级容错设计
java·spring boot·后端
比特森林探险记5 小时前
React API集成与路由
前端·react.js·前端框架
csdn2015_6 小时前
springboot task
java·spring boot·后端
czlczl200209256 小时前
Spring Boot :如何高性能地在 Filter 中获取响应体(Response Body)
java·spring boot·后端
码界奇点6 小时前
基于Spring Boot和Vue3的无头内容管理系统设计与实现
java·spring boot·后端·vue·毕业设计·源代码管理
To Be Clean Coder7 小时前
【Spring源码】createBean如何寻找构造器(二)——单参数构造器的场景
java·后端·spring
你才是臭弟弟7 小时前
SpringBoot 集成MinIo(根据上传文件.后缀自动归类)
java·spring boot·后端