You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

119 lines
3.9 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

// pages/function/function.js
Page({
data: {
classSelectorVisible1: false, //随机点名
classSelectorVisible2: false, //积分记录
classList: [
{ name: "班级一" },
{ name: "班级二" },
{ name: "班级三" },
],
// ... 其他数据
},
//加载页面classList(可以与class_manage的接口复用)
onLoad: function(options) {
// 发起网络请求以获取classList数据
wx.request({
url: 'http://192.168.152.1:8090/clazz/list', // 请替换为你的实际后端接口地址
method: 'GET', // 根据你的后端接口要求选择请求方法
success: (res) => {
// 请求成功的回调函数
if (res.statusCode === 200) {
try {
// 后端返回的数据格式{ "data": [{ "name": "" }, ...] }
// 小程序 SDK 会自动解析 JSON 字符串为对象,所以这里直接使用 res.data
const responseData = {
data:res.data
}
if (Array.isArray(responseData.data)) {
// 如果返回的数据中包含data数组则将其赋值给classList
this.setData({
classList: responseData.data
});
} else {
// 如果返回的数据格式不正确,则输出错误信息
console.error('返回的数据格式不正确期望包含data数组', responseData);
}
} catch (error) {
// 如果解析JSON时出错则输出错误信息
console.error('解析JSON数据时出错', error);
}
} else {
// 如果请求失败状态码不是200则输出错误信息
console.error('请求失败,状态码:', res.statusCode);
}
},
fail: (err) => {
// 请求失败的回调函数
console.error('请求出错', err);
}
});
},
// 班级管理
goToclass_manage: function() {
wx.navigateTo({
url: '/pages/class_manage/class_manage'
});
},
// 随机点名
goTocall_roll: function() {
this.setData({ classSelectorVisible1: true });
},
// 考勤管理
goTorecord: function() {
this.setData({ classSelectorVisible2: true });
},
//随机点名
handleClassConfirm1(e) {
const className = e.detail.className;
// 这里可以处理选择后的逻辑,比如跳转到录音页面并传递 className
console.log(className)
this.setData({ classSelectorVisible: false }); // 隐藏弹窗
const queryString = `className=${className}`;
wx.navigateTo({
url: `/pages/call_roll/call_roll?${queryString}`,//构造包含数据的url
success: function(res) {
// 跳转成功的回调
},
fail: function(err) {
// 跳转失败的回调
console.error('跳转失败', err);
}
})
},
handleClassCancel1() {
this.setData({ classSelectorVisible: false }); // 隐藏弹窗
// 可选:处理取消选择的逻辑
},
//积分记录
handleClassConfirm2(e) {
const className = e.detail.className;
// 这里可以处理选择后的逻辑,比如跳转到录音页面并传递 className
console.log(className)
this.setData({ classSelectorVisible: false }); // 隐藏弹窗
//传参给记录页面
const queryString = `className=${className}`;
wx.navigateTo({
url: `/pages/record/record?${queryString}`,//构造包含数据的url
success: function(res) {
// 跳转成功的回调
},
fail: function(err) {
// 跳转失败的回调
console.error('跳转失败', err);
}
})
},
handleClassCancel2() {
this.setData({ classSelectorVisible: false }); // 隐藏弹窗
// 可选:处理取消选择的逻辑
},
});