login.js 2.0 KB

1
  1. "use strict";const e=require("../../common/vendor.js"),o=require("../../common/assets.js"),t=require("../../api/auth.js"),a={__name:"login",setup(a){const i=e.ref(!1),n=e.ref(!1),s=e.ref(!1),r=e.ref(""),c=e.ref(""),d=e.ref(""),l=()=>{e.index.login({provider:"weixin",success:e=>{d.value=e.code}})};e.onMounted((()=>{const o=e.index.getStorageSync("token"),t=e.index.getStorageSync("userInfo");o&&t&&t.studentId?t.isNewUser&&!t.name?e.index.redirectTo({url:"/pages/profile/profile"}):e.index.switchTab({url:"/pages/jobs/jobs"}):l()}));const u=async o=>{try{const e=await t.getAgreement(o);if(200===e.code)return r.value=e.data.title,c.value=e.data.content,void(s.value=!0)}catch(a){console.error("获取协议失败",a),e.index.showToast({title:"获取协议失败,请稍后重试",icon:"none"})}},v=()=>{s.value=!1},g=e=>{i.value=e.detail.value.length>0},p=()=>{n.value=!1},x=async o=>{"getPhoneNumber:ok"===o.detail.errMsg?await w(o.detail.code):e.index.showToast({title:"授权失败",icon:"none"})},h=async o=>{i.value=!0,n.value=!1,"getPhoneNumber:ok"===o.detail.errMsg?await w(o.detail.code):e.index.showToast({title:"授权失败",icon:"none"})},w=async o=>{e.index.showLoading({title:"登录中..."});try{const a=await t.wechatLogin({code:d.value,phoneCode:o});e.index.hideLoading(),200===a.code&&(e.index.setStorageSync("token",a.data.token),e.index.setStorageSync("userInfo",a.data),e.index.showToast({title:"登录成功",icon:"success"}),setTimeout((()=>{a.data.isNewUser?e.index.navigateTo({url:"/pages/profile/profile"}):e.index.switchTab({url:"/pages/jobs/jobs"})}),1e3))}catch(a){console.error("登录异常",a),e.index.hideLoading(),l()}};return(t,a)=>e.e({a:i.value},i.value?{b:e.o(x)}:{c:e.o((e=>n.value=!0))},{d:i.value,e:e.o((e=>u("service"))),f:e.o((e=>u("privacy"))),g:e.o(g),h:o._imports_0,i:o._imports_1,j:o._imports_2,k:o._imports_3,l:e.o(p),m:e.o((e=>u("service"))),n:e.o((e=>u("privacy"))),o:e.o(p),p:e.o(h),q:n.value?1:"",r:e.o(v),s:e.t(r.value),t:c.value,v:e.o(v),w:s.value?1:""})}},i=e._export_sfc(a,[["__scopeId","data-v-e7c9100a"]]);wx.createPage(i);