118 lines
2.1 KiB
JavaScript
118 lines
2.1 KiB
JavaScript
import { baseUrl, globalImgUrl } from "../../../request";
|
|
|
|
// pages/course/courseList/courseList.js
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
courseList:[], // 课程列表
|
|
courseType: '', // 课程类别
|
|
globalImgUrl,
|
|
},
|
|
|
|
// 跳转课程详情页面
|
|
gotoCourseDetail(e) {
|
|
|
|
const courseId = e.currentTarget.dataset.id;
|
|
|
|
wx.navigateTo({
|
|
url: `/pages/course/courseDetail/courseDetail?id=${courseId}` ,
|
|
})
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad(options) {
|
|
// 接收路由参数 type 作为搜索关键字
|
|
const courseType = options.type || '';
|
|
this.setData({ courseType }, () => {
|
|
this.fetchCourseList();
|
|
});
|
|
},
|
|
|
|
// 从后端拉取课程列表
|
|
fetchCourseList() {
|
|
wx.request({
|
|
url: baseUrl + '/course/query/type',
|
|
method: 'POST',
|
|
header: {
|
|
Authorization: wx.getStorageSync('token')
|
|
},
|
|
data: {
|
|
templateString: this.data.courseType
|
|
},
|
|
success: res => {
|
|
console.log('课程列表',res.data.data);
|
|
if (res.data.code === 1) {
|
|
this.setData({
|
|
courseList: res.data.data
|
|
});
|
|
} else {
|
|
wx.showToast({
|
|
icon: 'none',
|
|
title: res.data.message || '获取课程失败',
|
|
});
|
|
}
|
|
},
|
|
fail: err => {
|
|
console.error('request failed', err);
|
|
wx.showToast({
|
|
icon: 'none',
|
|
title: '网络请求失败',
|
|
});
|
|
}
|
|
});
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面初次渲染完成
|
|
*/
|
|
onReady() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面显示
|
|
*/
|
|
onShow() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面隐藏
|
|
*/
|
|
onHide() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面卸载
|
|
*/
|
|
onUnload() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
*/
|
|
onPullDownRefresh() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 页面上拉触底事件的处理函数
|
|
*/
|
|
onReachBottom() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 用户点击右上角分享
|
|
*/
|
|
onShareAppMessage() {
|
|
|
|
}
|
|
}) |