名师详情前端

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>
相关推荐
Code额5 分钟前
Python 连接 DeepSeek API,OpenAI 对话方式总结
后端·python·ai·ai编程
星火10246 分钟前
【LangChain4j系列10】Guardrails 安全护栏
人工智能·后端
四千岁7 分钟前
稀疏向量BM25Retriever不支持中文怎么办?jieba来帮忙
前端·javascript·后端
用户6919026813399 分钟前
Docker基本概念
后端·docker·容器
颜进强11 分钟前
14 - OpenSpec 老页面改造骨架:定位 + 增量 + 回归三件套
前端·后端·ai编程
唐青枫12 分钟前
别只把 switch 当成多路 if:Zig 模式匹配、状态机与 Tagged Union 实战
后端
步行cgn16 分钟前
MyBatis 错误 Result Maps collection does not contain value for ... 详解与解决方案
后端
用户2506949216119 分钟前
Cordis 从入门到实战:插件卸载后,别留下一地鸡毛
后端
SomeB1oody31 分钟前
【RustyML入门】5.3. 聚类指标
开发语言·后端·机器学习·rust·教程
IT_陈寒44 分钟前
Vite打包给我挖的这个坑,差点搞崩我的项目
前端·人工智能·后端