app.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. // app.js
  2. App({
  3. globalData: {
  4. isLoggedIn: false, // 登录状态
  5. isLoggedIns: false, // 登录状态
  6. token: null
  7. },
  8. // 检查登录状态并弹出提示框
  9. checkLoginStatus() {
  10. const isLoggedIn = wx.getStorageSync('userInfo') || false;
  11. if (!isLoggedIn) {
  12. wx.showModal({
  13. title: '登录身份选择',
  14. content: '请选择您的身份以完成登录',
  15. confirmText: '我是老师',
  16. cancelText: '我是家长',
  17. success: (res) => {
  18. if (res.confirm) {
  19. // 家长:跳转本小程序登录页
  20. wx.navigateTo({
  21. url: '/pages/logins/logins',
  22. });
  23. } else if (res.cancel) {
  24. // 老师:跳转到老师端小程序
  25. wx.navigateToMiniProgram({
  26. appId: 'wx06f2b1b09ac5684f', // ⚠️ 替换成实际 appId
  27. path: 'pages/logins/logins',
  28. });
  29. }
  30. }
  31. });
  32. return false;
  33. }
  34. return true;
  35. },
  36. async login() {
  37. try {
  38. const res = await wx.cloud.callFunction({
  39. name: 'login',
  40. data: {
  41. username: 'admin',
  42. password: 'Admin1234_'
  43. }
  44. })
  45. if (res.result.code === 0) {
  46. const token = res.result.token
  47. this.globalData.isLoggedIns = true
  48. this.globalData.token = token
  49. wx.setStorageSync('token', token)
  50. return token
  51. } else {
  52. wx.showToast({ title: res.result.msg, icon: 'none' })
  53. }
  54. } catch (err) {
  55. console.error(err)
  56. wx.showToast({ title: '登录失败', icon: 'none' })
  57. }
  58. },
  59. onLaunch() {
  60. // 可以尝试读取本地缓存
  61. const token = wx.getStorageSync('token')
  62. if (token) {
  63. this.globalData.isLoggedIns = true
  64. this.globalData.token = token
  65. }
  66. // wx.cloud.init({
  67. // env: 'cloud1-6g98iw7i28b01747',
  68. // traceUser: true
  69. // })
  70. }
  71. })