// 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 }); // 隐藏弹窗 // 可选:处理取消选择的逻辑 }, });